Поделиться через


Источник файла MPEG-4

Исходный файл MPEG-4 анализирует файлы MP4 и 3GPP. Дополнительные сведения о формате MP4-файла см. в следующих документах стандартов:

  • ISO/IEC 14496-12: информационная технология - Кодирование звуковых визуальных объектов - часть 12: формат файлов файлов мультимедиа ISO base media
  • ISO/IEC 14496-14: Информационная технология - Кодирование звуковых визуальных объектов - часть 14: формат MP4-файла

Заметка

(Эти ресурсы могут быть недоступны на некоторых языках и странах.)

 

Источник файла MPEG-4 не декодирует данные аудио и видео в файле.

В этом разделе содержатся следующие разделы:

Расширения файлов и типы MIME

Источник файла MPEG-4 — это источник мультимедиа по умолчанию для следующих расширений имени файла.

Расширение файла Описание
.3g2 3GPP2
.3gp 3GPP
.3gp2 3GPP2
.3gpp 3GPP
.m4a Звук MPEG-4
.m4v Видео MPEG-4
.mov Фильм Apple QuickTime
.mp4 Аудио или видео MPEG-4
.mp4v Видео MPEG-4

 

Он также является источником мультимедиа по умолчанию для следующих типов MIME.

Тип MIME Описание
audio/3gpp Звук 3GPP
audio/3gpp2 Звук 3GPP2
audio/mp4 Звук MPEG-4
видео/3gpp Видео 3GPP
видео/3gpp2 Видео 3GPP2
видео/mp4 Видео MPEG-4

 

Типы носителей

MP4 — это расширяемый формат контейнера. Спецификация MP4 не определяет фиксированную структуру для описания типов носителей в контейнере MP4. Вместо этого он определяет иерархию объектов, которая позволяет пользовательским структурам определяться для каждого формата. Описание формата хранится в поле примера описания (stsd) для этого потока. Поле описания примера содержит список примеров записей. Для каждой записи образца код 4-байтов, аналогичный FOURCC, определяет структуру формата.

Эта расширяемость означает, что источник файла MPEG-4 не может распознавать любое возможное описание формата. Вместо этого при создании типов мультимедиа для потоков требуется двухуровневый подход. Как минимум, каждый тип носителя содержит следующие атрибуты.

Атрибут Описание
MF_MT_MAJOR_TYPE Равно MFMediaType_Audio или MFMediaType_Video.
MF_MT_SUBTYPE Указывает подтип потока.
MF_MT_MPEG4_SAMPLE_DESCRIPTION Содержит полный пример описания в виде двоичного BLOB-объекта.
MF_MT_MPEG4_CURRENT_SAMPLE_ENTRY Указывает текущую запись в поле описания образца.

 

Источник файла MPEG-4 распознает некоторые примеры типов записей. Для этих записей можно проанализировать структуру формата и создать полный тип носителя с дополнительными атрибутами, описывающими сведения о формате. См. атрибуты типа мультимедиа.

Источник файла MPEG-4 может проанализировать следующие примеры записей.

Пример кода записи Основной тип Подтип Описание Примечания
"alaw" Аудио WAVE_FORMAT_ALAW Кодирование по закону
Jpeg Видео MFVideoFormat_MJPG поток Photo-JPEG Формат контейнера QuickTime также поддерживает потоки JPEG движения с записями mjpa или mjpb, но источник файла MPEG-4 не предоставляет полный тип носителя для этих типов.
'avc1' Видео MFVideoFormat_H264 Видео H.264
Mp4a Аудио MFAudioFormat_AAC
MFAudioFormat_MP3
AAC или MP3 Запись mp4a может описать другие форматы звука MPEG, но источник файла MPEG-4 не анализирует структуру формата.
Mp4v Видео MFVideoFormat_M4S2
MFVideoFormat_MP4V
MPEG-4 часть 2 MFVideoFormat_M4S2 используется для mpeg-4 части 2 Simple Profile.
MFVideoFormat_MP4V используется для всех других профилей MPEG-4 части 2, включая расширенный простой профиль.
"необработанный" Аудио MFAudioFormat_PCM 8-разрядный звук PCM
'sowt' Аудио MFAudioFormat_PCM 16-разрядный звук PCM
"два" Аудио MFAudioFormat_PCM 16-разрядный звук PCM Источник файла MPEG-4 преобразует звуковые данные в маленький формат.
"ulaw" Аудио WAVE_FORMAT_MULAW кодирование μ
'vc-1' Видео MFVideoFormat_WVC1 Видео VC-1
"НЕТ" Аудио MFAudioFormat_PCM 8-разрядный или 16-разрядный звук PCM Источник файла MPEG-4 преобразует звуковые данные в маленький формат.
0x00000000 Аудио MFAudioFormat_PCM 8-разрядный или 16-разрядный звук PCM Источник файла MPEG-4 преобразует звуковые данные в маленький формат.
0x6d730002 Аудио WAVE_FORMAT_ADPCM Адаптивная модуляция разностного импульсного кода (ADPCM)
0x6d730011 Аудио WAVE_FORMAT_IMA_ADPCM ADPCM

 

Для других кодов, не показанных в предыдущей таблице, источник файла MPEG-4 задает подтип следующим образом:

  1. подтип = MFMPEG4Format_Base
  2. подтипе. Data1 = пример кода записи

Для кодов, не отображаемых в таблице, декодатор должен использовать атрибут MF_MT_MPEG4_SAMPLE_DESCRIPTION для анализа поля описания образца.

Список примеров кодов записи и ссылок на соответствующие спецификации см. на веб-сайте центра регистрации MP4.

Ограничения

Источник файла MPEG-4 не поддерживает следующие функции MP4-файлов:

  • Внешние дорожки.
  • Фрагменты фильма ("moof" или "mfra" коробки). Moof поддерживается в Windows 8.
  • Потоковая презентация. Источник файла MPEG-4 автоматически игнорирует треки подсказок.
  • Поиск по коду времени SMPTE.
  • Сжатые атомы ('cmov').

Поддерживаются только видео и аудиопотоки. Все треки, содержащие другие типы потоков, игнорируются автоматически. Данные мультимедиа должны быть помещены внутри атомов mdat.

Если установлено дополнение к обновлению платформы для Windows Vista, источник файла MPEG-4 доступен в Windows Vista, но доступен только в Windows Vista с помощью средства чтения исходного кода.

Обновления Windows 8 для источника и приемника MPEG-4

  • Поддержка чтения и записи поворота, добавленная в источник и приемник Windows 8 MPEG-4. Это не поддерживается в источнике и приемнике Windows 7 MPEG-4.

    Источник MPEG-4 считывает угол поворота для активной видео-дорожки в виде суммы угла поворота от Mvhd и от Tkhd.

    Приемник Microsoft MPEG-4 записывает угол поворота в матрицу tkhd, но записывает 0 градусов (удостоверение) в Mvhd. Обратите внимание, что приемник Microsoft MPEG-4 поддерживает только одну видео-дорожку.

    IPropertyStore считывает угол поворота только для первой видео-дорожки в виде суммы угла поворота от Mvhd и от Tkhd.

    IPropertyStore записывает угол поворота только для первой видео-дорожки в tkhd после того, как угол поворота корректируется в соответствии с углом поворота в mvhd, если он существует.

  • Фрагменты фильма (moof) поддерживаются в источнике и приемнике Windows 8 MPEG-4, но mfra не является.

  • H.263 поддерживается в источнике Windows 8 MPEG-4.

    Источник MPEG-4 теперь сопоставляет два четыреccа h263 и s263 в формате MPEG-4 с типом мультимедиа MFVideoFormat_H263.

  • Дополнительная поддержка fourcc, добавленная для MJPEG в источнике Windows 8 MPEG-4.

    Исходный код MPEG-4 сопоставляет foucc dmb1 с типом мультимедиа MFVideoFormat_MJPG.

  • Поддержка метаданных Furigana, добавленная в источнике WINDOWS 8 MPEG-4.

    Источник MPEG-4 считывает метаданные Furigana из "soal", "soaa", "sonm" и "soco". IPropertyStore считывает метаданные Furignana через набор соответствующих PKEYs.

    В следующей таблице показано сопоставление канонического имени оболочки, ключа свойства и идентификатора поля или тега в формате ФАЙЛА MPEG-4.

    Поле Ключ свойства Идентификатор тега или поля
    System.Music.AlbumTitleSortOverride PKEY_Music_AlbumTitleSortOverride soal
    System.Music.ArtistSortOverride PKEY_Music_ArtistSortOverride парить
    System.Music.AlbumArtistSortOverride PKEY_Music_AlbumArtistSortOverride soaa
    System.TitleSortOverride PKEY _TitleSortOverride sonm
    System.Music.ComposerSortOverride PKEY_Music_ComposerSortOverride soco

     

  • Поддержка стереоданных 3D atom добавлена в источнике Windows 8 MPEG-4.

  • Поддержка AC3 и DD+ добавлена в источник и приемник Windows 8 MPEG-4.

  • Файлы размером более 4 гигабайт (ГБ) поддерживаются в приемнике Windows 8 MPEG-4 для не фрагментального MP4.

  • Очистка оптимизирована в источнике Windows 8 MPEG-4.

    Чтобы уменьшить задержку, сведения о двух ближайших ключевых кадрах для конкретной позиции поиска предоставляются через МВФSeekInfo::GetNearestKeyFrames. Так как ключевой кадр не имеет зависимых кадров, он представляет кадр после декодирования только одного кадра. Используйте IMFGetService::GetService для получения этого интерфейса с помощью источника мультимедиа, конвейера или приложения.

    Задайте частоту нулю в источнике MPEG-4. Если конвейер находится в режиме очистки, скорость равна нулю.

  • SPS и PPS можно хранить в образце данных в приемнике MPEG-4.

    MF_MPEG4SINK_SPSPPS_PASSTHROUGH атрибут в приемнике MPEG-4 определяется для сохранения spS и PPS вместе с входными примерами (видеоданных H.264). Созданные mp4 клипы могут воспроизводиться источником Windows 7 MPEG-4 и другими.

  • SPS и PPS можно извлечь из входных примеров в приемнике MPEG-4.

    Если spS и PPS не задаются через MF_MT_MPEG_SEQUENCE_HEADER в типе входных носителей приемника MPEG-4, приемник MPEG-4 попытается извлечь SPS и PPS из входных примеров. Приемник MPEG-4 игнорирует все входные образцы, пока не находит первые spS и PPS, так как все входные образцы без SPS и PPS не декодируются.

  • 3D-сведения в записи конфигурации AVC поддерживаются для не фрагментальных MP4.

  • Длина NALU предоставляется для сжатых примеров H.264 для оптимизации декодирования H.264 VLD DXVA.

    Исходные наборы MPEG-4 MF_NALU_LENGTH_SET в типе выходного носителя MFVideoFormat_H264 или MFVideoFormat_h264. Он задает большой двоичный объект MF_NALU_LENGTH_INFORMATION для каждого выходного примера с четырехбайтовой длиной NALU для разных naLU в одном сжатом примере.

  • Добавлена поддержка звука MPEG2 ADTS в источнике MP4.

источников мультимедиа и приемников

поддержка MPEG-4 в Media Foundation

поддерживаемые форматы мультимедиа в Media Foundation