Слияние двух аудиопотоков из транспортного потока в ffmpeg

462
Applemeister

У меня есть файл M2TS, который состоит из следующего:

Stream #0:0[0xc9]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv), 704x576 [SAR 16:11 DAR 16:9], max. 15000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0xca](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s Stream #0:2[0xce](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, mono, s16p, 64 kb/s (visual impaired) 

Я пытаюсь объединить два потока в один, но пока не добился успеха.

Я бы подумал что -filter_complex "[0:1][0:2] join" будет достаточно, но, хотя кажется, что он объединил потоки, я могу слышать только звук из первого.

Я пытался использовать amerge фильтр, но это постоянно приводит к ошибке выделения памяти, что явно ложно, поскольку на моей машине установлено 16 ГБ ОЗУ.

Любая помощь, которую вы могли бы оказать, будет очень признательна, так как я на грани остроумия!

2
В следующий раз, пожалуйста, предоставьте полный неразрезанный вывод командной строки преобразования. slhck 8 лет назад 1

1 ответ на вопрос

1
Applemeister

Кажется, был один вариант, который я еще не исчерпал, и это был amixфильтр!

Это решило проблему:

-filter_complex "[0:1][0:2] amix=inputs=2[audio]" -map[audio]