Как использовать ffmpeg для создания аудио файла, повторяющегося на протяжении всего видео?

Как исправить ошибку в коде при дублировании аудио на всю продолжительность видео так, чтобы аудио проигрывалось в цикле и не заканчивалось на середине видео?
  • 21 октября 2023 г. 16:08
Ответы на вопрос 1
Для создания аудио файла, повторяющегося на протяжении всего видео, вы можете использовать ffmpeg с помощью команды `-stream_loop -1`, что указывает на бесконечное повторение аудио потока.

Пример команды:
```
ffmpeg -i input_video.mp4 -stream_loop -1 -i input_audio.mp3 -c:v copy -c:a aac -map 0:v -map 1:a -shortest output_video.mp4
```

В этой команде `input_video.mp4` - исходное видео, `input_audio.mp3` - исходный аудио файл, `output_video.mp4` - имя файла для сохранения выходного видео. 

`-c:v copy` указывает на копирование видео потока без изменений, а `-c:a aac` говорит о том, что аудио поток будет сконвертирован в AAC формат (вы можете выбрать любой другой поддерживаемый формат).

`-map 0:v -map 1:a` используется для выбора потоков видео и аудио, которые будут использоваться в выходном файле.

`-shortest` гарантирует, что выходной файл будет иметь продолжительность видео потока, даже если аудио поток длиннее.

Ошибку в коде при дублировании аудио на всю продолжительность видео, вызывающую конец аудио на середине видео, можно исправить, используя параметр `-shortest`, как указано в примере выше. Это заставит ffmpeg прекратить запись после окончания видео потока, а не аудио потока.
Похожие вопросы