.ASF вариант №
Файл с расширением .asf представляет собой формат мультимедийного файла для хранения и воспроизведения цифровых мультимедийных потоков по сети. Это формат файла-контейнера, который может содержать как видео-, так и аудиоконтент для потоковой передачи в Интернете. Вы редко найдете файлы ASF и, скорее всего, столкнетесь с файлами Windows Media Audio (WMA) и Windows Media Video (WMV) с указанием файлов ASF. с контентом, закодированным соответствующими кодеками. Файлы Windows Media можно создавать и читать с помощью Windows Media Format SDK.
Формат файла ASF
Файл ASF может содержать несколько независимых или зависимых потоков. Это может включать в себя несколько аудиопотоков для многоканального аудио или видеопотоков с несколькими битрейтами. Множественные битрейты делают потоки пригодными для передачи по разным полосам пропускания. Более того, потоки в файле ASF могут быть в сжатом или несжатом формате. Наилучшее сжатие достигается с помощью кодеков Microsoft Windows Media Audio и Video 9 Series. Полные спецификации формата файлов ASF доступны на веб-сайте Microsoft.
Файловая структура верхнего уровня ASF
Файлы ASF логически содержат три типа объектов верхнего уровня:
Header Object
- обязателен и должен быть размещен в начале каждого файла ASF.Объект данных
- обязательный и должен следовать за объектом заголовкаIndex Object(s)
— необязательный, но полезный для предоставления произвольного доступа к файлам ASF на основе времени.
На следующем изображении показана файловая структура верхнего уровня файлов ASF.
Объект заголовка верхнего уровня ASF
Объект Header предоставляет известную последовательность байтов в начале файлов ASF и может дополнительно содержать метаданные, такие как библиографическая информация. Он содержит всю информацию, которая требуется для правильной интерпретации информации в объекте данных. Объект заголовка может включать в себя несколько стандартных объектов, включая, помимо прочего:
- Объект свойств файла — содержит глобальные атрибуты файла.
- Объект свойств потока — определяет цифровой медиапоток и его характеристики.
- Объект расширения заголовка — позволяет добавлять дополнительные функции в файл ASF, сохраняя при этом обратную совместимость.
- Объект описания содержимого — содержит библиографическую информацию.
- Script Command Object — содержит команды, которые могут быть выполнены на временной шкале воспроизведения.
- Marker Object - Предоставляет именованные точки перехода в файле.
Объект заголовка представлен с использованием следующей структуры:
Имя поля | Тип поля | Размер (биты) |
---|---|---|
Идентификатор объекта | GUID | 128 |
Размер объекта | QWORD | 64 |
Количество объектов заголовка | Двойное слово | 32 |
Зарезервировано1 | БАЙТ | 8 |
Зарезервировано2 | БАЙТ | 8 |
Объект данных верхнего уровня ASF
Все цифровые мультимедийные данные для файла ASF содержатся в объекте данных и хранятся в форме пакетов данных ASF. Каждый пакет данных имеет фиксированную длину и содержит данные для одного или нескольких цифровых медиапотоков.
Объекты индекса верхнего уровня ASF
Объекты индекса верхнего уровня ASF имеют следующие два типа:
Simple Index Object
– содержит основанный на времени индекс видеоданных в файле ASF. Интервал времени между записями индекса является постоянным и сохраняется в объекте простого индекса.- «Индексный объект» — относится к индексному объекту, индексному объекту мультимедийного объекта и индексному объекту временного кода, форматы которых схожи. Как и простой индексный объект, индексный объект индексирует по времени с фиксированным интервалом времени, но не ограничивается видеопотоками.