Как добавить аудио дорожку к прямому эфиру средствами FFmpeg?

Есть онлайн камеры, но они отдают только видеопоток, и смотреть камеры простым обывателям без звука скучно. Недавно начали вещать статичные камеры установленные по городу в одно из местных iptv и пошли feature request`ы от абонентов.
Хотелось бы добавить к прямому эфиру какую нибудь звуковую дорожку, будь то заранее записанный файл или онлайн радиостанцию. Использую ffmpeg транскодирование для изменения размера картинки и битрейта.
В мане ffmpeg по большей части описывается работа с файлами, про онлайн потоки совсем мало.
Может кто то сталкивался с подобной задачей?
Стрим с камеры без звука в hls можно посмотреть тут
http://video.iluki.ru:81/matrosov_museum_102/index.m3u8
(через VLC)
  • Вопрос задан
  • 793 просмотра
Пригласить эксперта
Ответы на вопрос 1
@monah_tuk
Да там нет разницы, потоки или файлы.

Вот рабочий пример для вашего потока и первого найденного в гугле радио:
ffmpeg -i http://video.iluki.ru:81/matrosov_museum_102/index.m3u8 -i http://icecast.radiodfm.cdnvideo.ru/dfm.mp3 out.mkv


Мне сейчас стримить некуда - всё остальные опции будут касаться только опций кодирования, стриминга, буферов и т.п.

Интереснее если файл записан. Тут нужно сказать ему, что бы он крутился по кругу. Тут поможет это: video.stackexchange.com/questions/12905/repeat-loo..., а команда получится такой:
ffmpeg -i http://video.iluki.ru:81/matrosov_museum_102/index.m3u8 -f lavfi -re -i "amovie=filename=/tmp/some.mp3:loop=0, asetpts=N/SAMPLE_RATE/TB" -fflags +genpts -y out.mkv


вместо конкретного файла тут может быть и плей-лист. Всё остальное как и для примера с live-потоком аудио.

Если разберётесь с опцией -map, то можно брать аудио-дорожки из других видео.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы