Открыть сервис

ISO Base Media File Format

ISO Base Media File Format (ISO BMFF) — это контейнерный формат цифровых мультимедийных данных, определённый международным стандартом ISO/IEC 14496-12. Он служит основой для построения множества других медиаформатов, включая MP4, QuickTime File Format, 3GP и JPEG 2000. Формат описывает структуру хранения аудио, видео, текстовых дорожек (субтитров), метаданных и навигационных данных в виде иерархии объектов, называемых «боксами» (boxes) или «атомами» (atoms).

История

Разработка ISO Base Media File Format началась в конце 1990-х годов как часть стандарта MPEG-4 (ISO/IEC 14496). Первая версия стандарта была опубликована в 2001 году. Основой послужил формат QuickTime File Format компании Apple Inc., который был адаптирован и расширен для нужд MPEG-4. В 2003 году стандарт был принят как ISO/IEC 14496-12:2003. С тех пор он неоднократно обновлялся: в 2005, 2008, 2012, 2015, 2020 и 2022 годах. Последняя версия на момент 2023 года — ISO/IEC 14496-12:2022.

Формат активно используется в индустрии цифрового видео, особенно в интернете и мобильных устройствах. Он лёг в основу формата MP4 (ISO/IEC 14496-14), который стал стандартом для видео в интернете, а также форматов 3GP (для мобильных телефонов) и HEIF (High Efficiency Image File Format) для хранения изображений.

Структура

ISO BMFF основан на объектной модели: файл представляет собой последовательность вложенных объектов — боксов (boxes). Каждый бокс имеет заголовок, содержащий размер и тип, а также полезные данные. Боксы могут содержать другие боксы, образуя иерархическое дерево.

Основные типы боксов:

  • ftyp (File Type Box) — идентифицирует тип файла, версию совместимости и подтипы.
  • moov (Movie Box) — содержит метаданные о мультимедийной презентации: количество дорожек, их параметры, временные шкалы, кодеки, композицию.
  • mdat (Media Data Box) — содержит собственно медиаданные (сжатые аудио- и видеокадры, субтитры). Данные могут быть интерливированы (перемешаны) для потоковой передачи.
  • moof (Movie Fragment Box) — используется в фрагментированном режиме (fragmented MP4) для потоковой передачи и динамического адаптивного вещания (DASH, HLS).
  • stbl (Sample Table Box) — внутри moov: содержит таблицы, описывающие расположение, временные метки, размеры и типы сэмплов (кадров).

Каждый бокс имеет уникальный четырёхсимвольный идентификатор (FourCC), например, ftyp, moov, mdat, trak, mdia, stbl.

Ключевые характеристики

  • Независимость от кодеков: формат не привязан к конкретным аудио- или видеокодекам. Он может хранить данные, сжатые любым кодеком (H.264, H.265, AAC, MP3, VP9, AV1 и др.), при условии, что параметры кодеков описаны в боксах.
  • Поддержка метаданных: позволяет хранить теги (название, автор, год), обложки, субтитры (в текстовом или графическом виде), главы, навигационные точки.
  • Фрагментация: поддерживает разбиение медиаданных на фрагменты (fragments), что критически важно для потоковой передачи (DASH, HLS) и редактирования без перекодирования.
  • Временная шкала: использует единую временную шкалу (timescale) для всех дорожек, что упрощает синхронизацию.
  • Масштабируемость: может содержать несколько альтернативных дорожек (разные битрейты, разрешения, языки) для адаптивной потоковой передачи.

Применение

ISO BMFF является основой для следующих форматов:

  • MP4 (ISO/IEC 14496-14) — наиболее распространённый контейнер для видео в интернете, мобильных устройствах, цифровых камерах. Поддерживается всеми современными браузерами и плеерами.
  • 3GP (3GPP TS 26.244) — упрощённая версия для мобильных телефонов, используемая в сетях 3G.
  • QuickTime File Format (.mov) — исходный формат Apple, на котором базируется ISO BMFF. Файлы .mov структурно идентичны MP4, но могут содержать дополнительные боксы, не описанные в стандарте.
  • HEIF (High Efficiency Image File Format, ISO/IEC 23008-12) — формат для хранения изображений, основанный на ISO BMFF. Используется в iPhone, камерах Sony, Android.
  • JPEG 2000 (ISO/IEC 15444-12) — часть стандарта JPEG 2000 для хранения изображений в контейнере ISO BMFF.
  • AVIF — формат изображений на основе AV1, использующий контейнер HEIF (и, соответственно, ISO BMFF).
  • ISOBMFF — используется в спецификациях DASH (Dynamic Adaptive Streaming over HTTP) и CMAF (Common Media Application Format) для адаптивной потоковой передачи видео.

Преимущества и недостатки

Преимущества

  • Гибкость: поддерживает практически любые кодеки и типы данных.
  • Масштабируемость: легко расширяется новыми боксами без нарушения обратной совместимости.
  • Потоковая передача: фрагментированный режим позволяет начинать воспроизведение до полной загрузки файла.
  • Редактирование: можно добавлять, удалять или заменять дорожки без перекодирования всего файла.

Недостатки

  • Сложность: структура файла может быть избыточной для простых приложений.
  • Размер заголовков: метаданные могут занимать значительный объём, особенно в файлах с большим количеством дорожек.
  • Неоптимальность для редактирования в реальном времени: из-за необходимости обновления таблиц сэмплов при изменении содержимого.

Примеры использования

  • Видеохостинги (YouTube, Vimeo) — используют MP4 (ISO BMFF) как стандартный формат для загрузки и воспроизведения видео.
  • Мобильные приложения — камеры смартфонов (iPhone, Samsung) записывают видео в формате MP4 (HEVC/H.265) с контейнером ISO BMFF.
  • Цифровое телевидение — стандарт DVB (Digital Video Broadcasting) использует ISO BMFF для записи и потоковой передачи.
  • Фотоаппараты — современные беззеркальные камеры (Sony, Nikon) записывают видео в MP4 с поддержкой ISO BMFF.

Связь с другими стандартами

ISO BMFF является частью семейства стандартов MPEG-4. Он тесно связан с:

  • ISO/IEC 14496-14 (MP4) — определяет, как использовать ISO BMFF для хранения MPEG-4 контента.
  • ISO/IEC 14496-15 (AVC file format) — расширение для хранения видео, сжатого по стандарту H.264/AVC.
  • ISO/IEC 23008-12 (HEIF) — формат изображений на основе ISO BMFF.
  • 3GPP TS 26.244 (3GP) — мобильная версия.

Интересные факты

  • Формат QuickTime File Format (.mov) был создан Apple в 1991 году, а ISO BMFF в 2001 году — по сути, его стандартизированная версия.
  • Боксы в ISO BMFF могут иметь произвольную длину, что позволяет встраивать в файл пользовательские данные (например, метки времени, GPS-координаты).
  • В фрагментированном режиме (fragmented MP4) файл может быть разбит на множество маленьких фрагментов, что делает его удобным для адаптивной потоковой передачи через HTTP (DASH, HLS).
  • Формат поддерживает «пустые» боксы, которые не содержат данных, но могут использоваться для маркировки или синхронизации.

Источники

  • ISO/IEC 14496-12:2022 — Information technology — Coding of audio-visual objects — Part 12: ISO Base Media File Format.
  • ISO/IEC 14496-14:2003 — Information technology — Coding of audio-visual objects — Part 14: MP4 file format.
  • 3GPP TS 26.244 — Transparent end-to-end packet switched streaming service (PSS); 3GPP file format (3GP).
  • ISO/IEC 23008-12:2017 — Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 12: High Efficiency Image File Format (HEIF).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →