Загрузка более ранних сегментов из живого плейлиста m3u8

У меня есть .m3u8URI типа LIVE. Насколько я знаю, живые плейлисты используют скользящее окно вместо того, чтобы содержать все сегменты. Мои вопросы,


1) Можно ли узнать длину окна (по времени или кадру)? Я намерен использовать плейлист, который у меня есть, чтобы загрузить прямую трансляцию, начиная с более раннего времени.

2) Если да, то как мне получить более ранние сегменты, т.е. как указать, откуда я хочу начать загрузку? Я пробовал что-то вроде ffmpeg -ss -00:00:10 -i "in.m3u8" out.mp4, но это не сработало.

У меня нет большого опыта в кодировании видео или прямых трансляциях, и я был бы признателен за любое направление!

Ответы (1)

Вам нужно загрузить сам m3u8, просмотреть записи и убедиться, что отдельные имена файлов TS полностью регулярны, т.е. нет подписей, которые меняются с каждой записью, и можно вывести различные присутствующие элементы.

Если да, то просто действуйте в обратном порядке, т.е. если в загружаемом плейлисте есть записи file_03532.ts, file_03533.ts, file_03534.ts..., то file_03529.ts, file_03530.ts, file_03531.ts.. будут более ранними записями. Затем вы можете использовать менеджер загрузок, который позволяет загружать список имен файлов, созданный с использованием шаблона. ИДМ делает это. Есть, наверное, и другие.

Это имеет смысл; спасибо! Простите мою нехватку опыта в этом вопросе, но как мы смотрим на записи и видим отдельные фрагменты TS?
Неважно, я открыл его с помощью Notepad ++, и это сработало.