Я использую ffmpeg для преобразования потока MPEG-TS в MPEG-DASH. Mpeg-ts - это h264 и aac_latm. Поэтому мне не нужно перекодировать видео. Команда, которую я использую:

ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -c:v copy -window_size 10 -extra_window_size 10 -use_template 1 -use_timeline 1 -f dash kan.mpd

Я копирую видеокодек с помощью -c:v copy, а аудиокодек по умолчанию имеет значение aac.

Таким образом я получаю поток DASH, НО аудио / видео не синхронизировано!

Как я могу это исправить?

Заметки:

  1. Если я перекодирую аудио и видео, как:

    ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -window_size 10 -extra_window_size 10 -use_template 1 -use_timeline 1 -f dash kan.mpd

Тогда аудио / видео синхронизируется идеально. Но я не хочу перекодировать видео даром, поскольку я упомянул видео уже h264. (напрямую влияет на производительность)

  1. Если я преобразую поток MPEG-TS в файл mp4, например:

    ffmpeg -i http://10.0.0.211:55555/Ch%2011%20Kan -strict -2 -c:v copy kan.mp4

Тогда аудио / видео синхронизируется идеально.

0