11

У меня есть аудиофайл AC3 5.1, в который я хотел бы вставить x секунд тихого звука в начале. Это не имеет никакого отношения к мультиплексированию видео, поэтому его смещение бесполезно, поскольку кажется, что оно работает только с аудиопотоком, сопровождающим видео. Я хотел бы добиться этого с помощью ffmpeg. Есть идеи?

1 ответ1

19

Вы можете использовать фильтр аудиоисточников anullsrc в ffmpeg . Пример создания 5.1-канального звука с частотой дискретизации 48000 Гц и аудиофайлом в 1 секунду

ffmpeg -f lavfi -i anullsrc=channel_layout=5.1:sample_rate=48000 -t 1 silence.ac3

Теперь вы можете объединять файлы, используя протокол concat:

ffmpeg -i concat:"silence.ac3|audio.ac3" -codec copy combined.ac3

Или вы можете сделать все в одной команде с помощью фильтра concat:

ffmpeg -f lavfi -i anullsrc=channel_layout=5.1:sample_rate=48000 -i audio.ac3 -filter_complex \
"[0:0] [1:0] concat=n=2:v=0:a=1" combined.ac3

Использование фильтра concat приведет к перекодированию, а протокол concat - нет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .