Термин
Сегмент
Самодостаточный декодируемый кусок медиа – обычно 2, 4 или 6 секунд – на который ссылается манифест. Базовая единица HTTP-доставки видео.
Сегмент – это маленький файл (или byte-range), который содержит самодостаточный кусок закодированного видео плюс синхронное аудио. «Самодостаточный» значит, что сегмент начинается с keyframe и декодируется без обращения к предыдущим сегментам. Именно это свойство делает возможным ABR: плеер может переключиться с 1080p-сегмента на 720p-сегмент на любой границе сегмента без ресинхронизации.
Длительность сегмента – один из самых значимых рычагов в стриминге. Короткие сегменты (1–2 с) снижают live-задержку и дают ABR-алгоритму больше шансов переключить качество, но раздувают манифест, фрагментируют кеш и снижают эффективность сжатия (каждый keyframe дорогой). Длинные сегменты (6–10 с) лучше жмутся и лучше кешируются, но увеличивают задержку и тормозят реакцию ABR. HLS Authoring Specification рекомендует 6 секунд для VOD; LL-HLS использует 1-секундные partial-сегменты внутри 4-секундных полных.
В CMAF и fMP4 «сегмент» конкретно означает MP4 movie fragment с парой `moof + mdat`, которую можно appendBuffer в MSE. В старом HLS сегмент был `.ts` MPEG-TS файлом. К 2025 году индустрия сошлась на CMAF-сегментах: один и тот же файл обслуживает и HLS-, и DASH-плееры, экономя половину упаковки и хранения.
Считаете параметры для своего продукта?
Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.