MPEG-4 Dosya Kaynağı

MPEG-4 dosya kaynağı MP4 ve 3GPP dosyalarını ayrıştırıyor. MP4 dosya biçimi hakkında daha fazla bilgi için aşağıdaki standart belgelerine bakın:

  • ISO/IEC 14496-12: Bilgi teknolojisi -- Görsel-işitsel nesnelerin kodlaması -- Bölüm 12: ISO Temel Medya Dosya Biçimi
  • ISO/IEC 14496-14: Bilgi teknolojisi -- Görsel-işitsel nesnelerin kodlaması -- Bölüm 14: MP4 Dosya Biçimi

Not

(Bu kaynaklar bazı dillerde ve ülkelerde kullanılamayabilir.)

 

MPEG-4 dosya kaynağı, dosyadaki ses/video verilerinin kodunu çözmez.

Bu konu aşağıdaki bölümleri içerir:

Dosya Uzantıları ve MIME Türleri

MPEG-4 dosya kaynağı, aşağıdaki dosya adı uzantıları için varsayılan medya kaynağıdır.

Dosya uzantısı Açıklama
.3g2 3GPP2
.3gp 3GPP
.3gp2 3GPP2
.3gpp 3GPP
.m4a MPEG-4 ses
.m4v MPEG-4 videosu
.Mov Apple QuickTime Movie
.mp4 MPEG-4 ses veya video
.mp4v MPEG-4 videosu

 

Ayrıca aşağıdaki MIME türleri için varsayılan medya kaynağıdır.

MIME türü Açıklama
ses/3gpp 3GPP ses
audio/3gpp2 3GPP2 ses
ses/mp4 MPEG-4 ses
video/3gpp 3GPP videosu
video/3gpp2 3GPP2 videosu
video/mp4 MPEG-4 videosu

 

Medya Türleri

MP4 genişletilebilir bir kapsayıcı biçimidir. MP4 belirtimi, bir MP4 kapsayıcısında medya türlerini tanımlamak için sabit bir yapı tanımlamaz. Bunun yerine, her biçim için özel yapıların tanımlanmasına izin veren bir nesne hiyerarşisi tanımlar. Biçim açıklaması, bu akışın örnek açıklama ('stsd') kutusunda depolanır. Örnek açıklama kutusu örnek girdilerin listesini içerir. Her örnek giriş için FOURCC'ye benzer bir 4 baytlık kod biçim yapısını tanımlar.

Bu genişletilebilirlik, MPEG-4 dosya kaynağının mümkün olan her biçim açıklamasını tanıyamayacağı anlamına gelir. Bunun yerine, akışlar için medya türleri oluştururken iki katmanlı bir yaklaşım benimser. En azından, her medya türü aşağıdaki öznitelikleri içerir.

Öznitelik Açıklama
MF_MT_MAJOR_TYPE MFMediaType_Audio veya MFMediaType_Videoeşittir.
MF_MT_SUBTYPE Akış alt türünü belirtir.
MF_MT_MPEG4_SAMPLE_DESCRIPTION İkili blob olarak örnek açıklama kutusunun tamamını içerir.
MF_MT_MPEG4_CURRENT_SAMPLE_ENTRY Örnek açıklama kutusunda geçerli girdiyi belirtir.

 

MPEG-4 dosya kaynağı bazı örnek giriş türlerini tanır. Bu girdiler için biçim yapısını ayrıştırabilir ve biçim ayrıntılarını açıklayan ek özniteliklerle eksiksiz bir medya türü oluşturabilir. Bkz. Medya Türü Öznitelikleri.

MPEG-4 dosya kaynağı aşağıdaki örnek girdileri ayrıştırabilir.

Örnek giriş kodu Ana tür Alt Açıklama Notlar
'alaw' Ses WAVE_FORMAT_ALAW Hukuk kodlaması
'jpeg' Video MFVideoFormat_MJPG Photo-JPEG akışı QuickTime kapsayıcı biçimi ayrıca 'mjpa' veya 'mjpb' girişleri olan motion JPEG akışlarını da destekler, ancak MPEG-4 dosya kaynağı bu türler için tam bir medya türü sağlamaz.
'avc1' Video MFVideoFormat_H264 H.264 videosu
'mp4a' Ses MFAudioFormat_AAC
MFAudioFormat_MP3
AAC veya MP3 'mp4a' girişi diğer MPEG ses biçimlerini açıklayabilir, ancak MPEG-4 dosya kaynağı biçim yapısını ayrıştırmıyor.
'mp4v' Video MFVideoFormat_M4S2
MFVideoFormat_MP4V
MPEG-4 bölüm 2 MFVideoFormat_M4S2 MPEG-4 bölüm 2 Basit Profil için kullanılır.
MFVideoFormat_MP4V, Gelişmiş Basit Profil dahil olmak üzere diğer tüm MPEG-4 bölüm 2 profilleri için kullanılır.
'ham' Ses MFAudioFormat_PCM 8 bit PCM ses
'sowt' Ses MFAudioFormat_PCM 16 bit küçük endian PCM sesi
'twos' Ses MFAudioFormat_PCM 16 bit büyük endian PCM ses MPEG-4 dosya kaynağı ses verilerini little-endian biçimine dönüştürür.
'ulaw' Ses WAVE_FORMAT_MULAW μ-law kodlaması
'vc-1' Video MFVideoFormat_WVC1 VC-1 videosu
'YOK' Ses MFAudioFormat_PCM 8 bit veya 16 bit büyük endian PCM sesi MPEG-4 dosya kaynağı ses verilerini little-endian biçimine dönüştürür.
0x00000000 Ses MFAudioFormat_PCM 8 bit veya 16 bit büyük endian PCM sesi MPEG-4 dosya kaynağı ses verilerini little-endian biçimine dönüştürür.
0x6d730002 Ses WAVE_FORMAT_ADPCM Uyarlamalı Diferansiyel Darbe Kodu Modülasyonu (ADPCM)
0x6d730011 Ses WAVE_FORMAT_IMA_ADPCM ADPCM

 

Önceki tabloda gösterilmeyen diğer kodlar için MPEG-4 dosya kaynağı alt türü aşağıdaki gibi ayarlar:

  1. alt türü = MFMPEG4Format_Base
  2. alt türü. Data1 = örnek giriş kodu

Tabloda gösterilmeyen kodlar için kod çözücü, örnek açıklama kutusunu ayrıştırmak için MF_MT_MPEG4_SAMPLE_DESCRIPTION özniteliğini kullanmalıdır.

Örnek giriş kodlarının listesi ve ilgili belirtimlere bağlantılar için 'MP4' Kayıt Yetkilisi web sitesine bakın.

Sınırlama

MPEG-4 dosya kaynağı, MP4 dosyalarının aşağıdaki özelliklerini desteklemez:

  • Dış parçalar.
  • Film parçaları ('moof' veya 'mfra' kutuları). 'moof' Windows 8'de desteklenir.
  • Akışlı sunular. MPEG-4 dosya kaynağı ipucu izlerini sessizce yoksayar.
  • SMPTE zaman koduna göre arama.
  • Sıkıştırılmış ('cmov') atomlar.

Yalnızca video ve ses akışları desteklenir. Diğer akış türlerini içeren tüm parçalar sessizce yoksayılır. Medya verileri 'mdat' atomlarının içine yerleştirilmelidir.

Windows Vista için Platform Güncelleştirme Eki yüklüyse, MPEG-4 dosya kaynağı Windows Vista'da kullanılabilir, ancak yalnızca Kaynak Okuyucukullanılarak Windows Vista'da erişilebilir.

MPEG-4 kaynağı ve havuzu için Windows 8 güncelleştirmeleri

  • Windows 8 MPEG-4 kaynağı ve havuzuna döndürme okuma ve yazma desteği eklendi. Bu, Windows 7 MPEG-4 kaynağında ve havuzunda desteklenmez.

    MPEG-4 kaynağı, etkin bir video parçasının döndürme açısını 'mvhd' ve 'tkhd' cinsinden döndürme açısının toplamı olarak okur.

    Microsoft MPEG-4 havuzu döndürme açısını 'tkhd' olarak yazar, ancak 'mvhd' içinde 0 derece (kimlik) matris yazar. Microsoft MPEG-4 havuzu yalnızca tek bir video parçasını destekler.

    IPropertyStore, yalnızca ilk video parçasının döndürme açısını 'mvhd' ve 'tkhd' döndürme açısının toplamı olarak okur.

    IPropertyStore, döndürme açısı varsa 'mvhd' içindeki döndürme açısına göre ayarlandıktan sonra 'tkhd' içindeki yalnızca ilk video parçası için döndürme açısını yazar.

  • Film parçaları ('moof') Windows 8 MPEG-4 kaynağında ve havuzunda desteklenir, ancak 'mfra' desteklenmez.

  • H.263, Windows 8 MPEG-4 kaynağında desteklenir.

    MPEG-4 kaynağı artık MPEG-4 dosya biçimindeki iki dörtcc 'h263' ve 's263' öğesini MFVideoFormat_H263medya türüyle eşler.

  • Windows 8 MPEG-4 kaynağında MJPEG için daha fazla fourcc desteği eklendi.

    MPEG-4 kaynak, 'dmb1' dosyasının foucc değerini MFVideoFormat_MJPGmedya türüyle eşler.

  • Windows 8 MPEG-4 kaynağında Furigana meta veri desteği eklendi.

    MPEG-4 kaynağı 'soal', 'soar', 'soaa', 'sonm' ve 'soco' kaynaklarından Furigana meta verilerini okur. IPropertyStore, karşılık gelen PKEY'ler kümesi aracılığıyla Furignana meta verilerini okur.

    Aşağıdaki tabloda kabuk kurallı adı, özellik anahtarı ve MPEG-4 dosya biçimindeki kutu/etiket kimliği arasındaki eşleme gösterilmektedir.

    Alan Özellik Anahtarı Etiket/Kutu Kimliği
    System.Music.AlbumTitleSortOverride PKEY_Music_AlbumTitleSortOverride soal
    System.Music.ArtistSortOverride PKEY_Music_ArtistSortOverride yükselmek
    System.Music.AlbumArtistSortOverride PKEY_Music_AlbumArtistSortOverride soaa
    System.TitleSortOverride PKEY _TitleSortOverride sonm
    System.Music.ComposerSortOverride PKEY_Music_ComposerSortOverride soco

     

  • Windows 8 MPEG-4 kaynağında stereo 3D atom desteği eklendi.

  • Windows 8 MPEG-4 kaynağı ve havuzuna AC3 ve DD+ desteği eklendi.

  • Windows 8 MPEG-4 havuzundaki parçalı olmayan MP4 için 4 gigabayttan (GB) büyük dosyalar desteklenir.

  • Temizleme, Windows 8 MPEG-4 kaynağında iyileştirilmiştir.

    Gecikme süresini azaltmak için, belirli bir arama konumu için en yakın iki anahtar çerçevenin bilgileri, IMFSeekInfo::GetNearestKeyFramesaracılığıyla kullanıma sunulur. Anahtar çerçeve bağımlı çerçevelere sahip olmadığından, yalnızca bir çerçevenin kodunu çözdükten sonra çerçeveyi gösterir. Bu arabirimi medya kaynağı, işlem hattı veya uygulama aracılığıyla almak için IMFGetService::GetService kullanın.

    MPEG-4 kaynağında hızı sıfır olarak ayarlayın. İşlem hattı temizleme modundayken hız sıfır olur.

  • SPS ve PPS, MPEG-4 havuzundaki örnek verilerde depolanabilir.

    MPEG-4 havuzundaki MF_MPEG4SINK_SPSPPS_PASSTHROUGH özniteliği, SPS'lerin ve PPS'lerin giriş örnekleri (H.264 video verileri) ile birlikte kaydedilmesine izin vermek için tanımlanır. Üretilen mp4 klipleri Windows 7 MPEG-4 kaynağı ve diğerleri tarafından oynatabilirsiniz.

  • SPS ve PPS, MPEG-4 havuzundaki giriş örneklerinden ayıklanabilir.

    SPS ve PPS, MPEG-4 havuzu giriş medya türündeki MF_MT_MPEG_SEQUENCE_HEADER üzerinden ayarlanmadığında, MPEG-4 havuzu giriş örneklerinden SPS ve PPS'yi ayıklamayı dener. MPEG-4 havuzu, ilk SPS ve PPS'yi bulana kadar tüm giriş örneklerini yoksayar, çünkü SPS ve PPS içermeyen tüm giriş örnekleri kod çözemez.

  • AVC yapılandırma kaydındaki 3B bilgiler parçalı olmayan MP4 için desteklenir.

  • H.264 VLD DXVA kod çözmeyi iyileştirmek için H.264 sıkıştırılmış örneklerde NALU uzunluğu açığa çıkar.

    MPEG-4 kaynak, MFVideoFormat_H264 veya MFVideoFormat_h264çıkış medya türü üzerinde MF_NALU_LENGTH_SET ayarlar. Tek bir sıkıştırılmış örnekteki farklı NALU'lar için dört baytLıK NALU uzunluğuyla her çıktı örneğinde MF_NALU_LENGTH_INFORMATION blobunu ayarlar.

  • MP4 kaynağında MPEG2 ADTS sesi desteği eklendi.

Medya Kaynakları ve Havuzları

Media Foundation 'da MPEG-4 Desteği

Media Foundation 'da Desteklenen Medya Biçimlerini