Фильтр amix FFMPEG вызывает обрыв основного аудиопотока - PullRequest
0 голосов
/ 21 января 2019

Итак, у меня есть видео под названием 1.mkv, и я хотел бы смешать различные аудиоклипы в определенные моменты.Для этого я использую опцию -filter_complex.Тем не менее, я сталкиваюсь с некоторыми проблемами, потому что, когда ffmpeg пытается микшировать в первом аудиопотоке, звук работает в течение короткого времени, когда воспроизводится клип, а затем отключается весь звук.Я использую ffmpeg версии 2.8.15-0 (которая соответствует моему дистрибутиву).Еще одна «странная» вещь о выводе видео состоит в том, что в xplayer видео останавливается после отключения звука и будет работать, если вы пропустите достаточно далеко вперед в видео (не уверен, что это полезно, но это может дать некоторые дополнительные подсказки),

Полная команда:

ffmpeg -i "1.mkv" -i "5.wav" -i "2.wav" -i "3.wav" -i "6.wav" -i "7.wav" -i "4.wav" -i "9.wav" -i "8.wav" -i "10.wav" -filter_complex "[0:0]setdar=4/3[v0];

[2:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=20000|20000,volume=0.5[ad2];

[4:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=900000|900000,volume=0.5[ad4];

[3:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=300000|300000,volume=0.5[ad3];

[1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=720000|720000,volume=0.5[ad1];

[7:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=1140000|1140000,volume=0.5[ad7];

[9:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=1260000|1260000,volume=0.5[ad9];

[8:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=1020000|1020000,volume=0.5[ad8];

[5:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=960000|960000,volume=0.5[ad5];

[6:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=480000|480000,volume=0.5[ad6];
[0:1]volume=1[ad0];
[ad0][ad2][ad4][ad3][ad1][ad7][ad9][ad8][ad5][ad6]amix=inputs=10:duration=first:dropout_transition=0,dynaudnorm[a0]" -map "[v0]" -map "[a0]" -c:v libx264 -ar 44100  -c:a libmp3lame -preset ultrafast -crf 17 -b:v 1M out2.flv

частичная команда

ffmpeg -i "1.mkv" -i "2.wav" -filter_complex "[0:0]setdar=4/3[v0];
[1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,adelay=20000|20000,volume=0.5[ad2];
[0:1]volume=1[ad0];
[ad0][ad2]amix=inputs=2:duration=first:dropout_transition=0,dynaudnorm[a0]" -map "[v0]" -map "[a0]" -c:v libx264 -ar 44100  -c:a libmp3lame -preset ultrafast -crf 17 -b:v 1M out2.flv

1 Ответ

0 голосов
/ 21 января 2019

Так что мне удалось решить эту проблему, поигравшись с аудио фильтрами. Исправление заключалось в преобразовании монопотока в стерео перед применением звуковых фильтров. Я думал об удалении вопроса, но оставлю его на тот случай, если в будущем у кого-то возникнет такая же проблема.

от моно до стерео

[1][1]amerge=inputs=2[a1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...