Короткое определение

Самодостаточный декодируемый фрагмент медиа – обычно длительностью 2, 4 или 6 секунд – на который ссылается манифест. Это базовая единица доставки видео по HTTP.

Сегмент – это небольшой файл (или диапазон байтов), содержащий самодостаточный фрагмент закодированного видео вместе с синхронным аудио. «Самодостаточный» означает, что сегмент начинается с ключевого кадра и может быть декодирован без использования данных из предыдущих сегментов. Именно это свойство позволяет реализовать ABR: плеер может переключиться с сегмента 1080p на сегмент 720p на любой границе сегмента без необходимости ресинхронизации.

Длительность сегмента – один из ключевых параметров в стриминге. Короткие сегменты (1–2 секунды) снижают задержку в прямом эфире и дают ABR-алгоритму больше возможностей для переключения качества, но при этом увеличивают размер манифеста, фрагментируют кэш и снижают эффективность сжатия (каждый ключевой кадр стоит дорого). Длинные сегменты (6–10 секунд) лучше сжимаются и эффективнее кэшируются, но увеличивают задержку и замедляют реакцию ABR. Спецификация HLS Authoring рекомендует использовать длительность 6 секунд для VOD; LL-HLS применяет 1-секундные partial-сегменты внутри 4-секундных полных.

В CMAF и fMP4 под «сегментом» понимается фрагмент MP4 movie с парой `moof + mdat`, который можно передать в MSE через appendBuffer. В старом HLS сегмент представлял собой MPEG-TS файл `.ts`. К 2025 году индустрия пришла к использованию CMAF-сегментов: один и тот же файл обслуживает как HLS-, так и DASH-плееры, сокращая затраты на упаковку и хранение почти вдвое.

Считаете параметры для своего продукта?

Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.