HLS - как создать манифест m3u8, если у меня есть файлы ts (Ubuntu)?

Итак, я обнаружил, что могу создавать ts-сегменты фильма с помощью этой команды ffmpeg:

ffmpeg -i foo.mp4 -codec copy -vbsf h264_mp4toannexb -map 0 -f segment -segment_list out.list -segment_time 10 out%03d.ts

Но теперь я не знаю, как создать файл манифеста m3u8 из файлов ts. Есть ли какая-то библиотека или команда с открытым исходным кодом в Ubuntu, которая может сделать это для меня?

Если нет, то насколько сложно создать файл m3u8 на Python или другом языке?


person Richard Knop    schedule 26.07.2012    source источник
comment
@Richard.У меня есть один большой файл .ts, как я могу разделить их на сегменты и сделать из него m3u8 без какого-либо перекодирования? не могли бы вы показать мне команду для этого? спасибо   -  person user1788736    schedule 21.05.2014


Ответы (2)


FFmpeg может создавать файлы m3u8. Просто используйте аргументы 'segment_list' для имени плейлиста и 'segment_list_type m3u8' для создания плейлиста типа m3u8. Просто убедитесь, что вы используете последнюю версию ffmpeg.

Для получения дополнительной информации см. этот раздел в документации.

person kiri    schedule 16.09.2012
comment
@kiri.Как разделить один большой файл .ts без перекодирования на множество фрагментов и сделать из него файл m3u8? - person user1788736; 21.05.2014

Последняя версия ffmpeg, извлеченная из git (протестирована с версией ffmpeg git-2013-08-15-165b657), создаст файл списка воспроизведения сегмента в формате m3u8, если вы укажете расширение m3u8 для выходного файла при использовании аргумента -segment_list.

ffmpeg -i foo.mp4 -codec copy -vbsf h264_mp4toannexb -map 0 -f segment -segment_list out.m3u8 -segment_time 10 out%03d.ts

справочник по сегментатору потока ffmpeg

person Brandon Galbraith    schedule 23.08.2013
comment
какова цель -vbsf h264_mp4toannexb? - person ; 05.01.2015