Я пытаюсь записать потоковые (фрагментированные?) Файлы mp4 с помощью FFMpeg. Но по умолчанию для FFMpeg bahavior формата -f mp4
это не тот.Как создать потоковый аудиофайл с ffmpeg?
Возьмем для примера AAC-LC MP4 test file сохранить его как aac_lc_in.m4a
и запустить ffmpeg
команду.
ffmpeg -y -i aac_lc_in.m4a -strict -2 -codec copy -f mp4 aac_lc_out.m4a
Результатом является не поточную файл (поместить его на сервер и попытайтесь загрузить его в вашем браузере It запускается только после полной загрузки). Это не происходит с исходным файлом, который можно запустить до завершения загрузки.
Я также попытался с помощью параметров в формате mp4
:
-movflags frag_keyframe+empty_moov
-movflags faststart+frag_keyframe
-movflags faststart+frag_keyframe+empty_moov
-movflags faststart+rtphint+frag_keyframe
-movflags rtphint+frag_keyframe
-movflags rtphint+frag_keyframe -rtpflags latm
, но ничего не помогало. Даже если выходной файл выглядит очень похожим на исходный (поле Формат файла, примеры таблиц и т. Д.), Сгенерированный файл не является потоковым.