Термин

Fragmented MP4 (fMP4)

Англ.: fMP4
Короткое определение

MP4, разбитый на независимые фрагменты – фундамент CMAF и современного HLS/DASH-стриминга.

Fragmented MP4 (fMP4) – стриминг-дружественный вариант контейнера MP4. Обычный MP4 хранит весь свой индекс метаданных в начале или в конце файла, и поэтому плеер должен скачать большой кусок прежде чем сможет начать воспроизведение. Fragmented MP4 вместо этого режет видео на много маленьких независимо проигрываемых фрагментов – у каждого свой маленький индекс – так что плеер может начать играть, как только пришёл первый фрагмент, и переходить к любому фрагменту без перекачивания всего файла.

Это фундамент современного HTTP-стриминга. И HLS (адаптивный протокол Apple), и DASH (MPEG-стандарт) используют fMP4 как формат сегментов. Одни и те же fMP4-сегменты могут одновременно обслуживать оба протокола – именно это стандартизует CMAF (Common Media Application Format), позволяя одному набору файлов дойти до любого плеера: от iPhone Safari до Roku и Chromecast.

Для стримингового продукта практические следствия большие. Фрагменты обычно идут по 2–6 секунд; короткие фрагменты дают низкую задержку в live (LL-HLS опускается до ~1 секунды), длинные – улучшают эффективность сжатия и снижают overhead плейлиста. Каждый фрагмент должен начинаться с keyframe (`idr`), чтобы быть независимо декодируемым, что связывает длину сегмента с длиной GOP. Формат fMP4 также поддерживает трюки с byte-range fetch, которые плееры используют для adaptive bitrate – скачивают только следующие 2 секунды на том качестве, которое подходит текущей скорости сети. В 2026 году fMP4 – универсальный контейнер доставки стримингового видео.

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

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