다음을 통해 공유


MPEG-4 파일 원본

MPEG-4 파일 원본은 MP4 및 3GPP 파일을 구문 분석합니다. MP4 파일 형식에 대한 자세한 내용은 다음 표준 문서를 참조하세요.

  • ISO/IEC 14496-12: 정보 기술 -- 시청각 개체 코딩 -- 12부: ISO 기본 미디어 파일 형식
  • ISO/IEC 14496-14: 정보 기술 -- 시청각 개체 코딩 -- 14부: MP4 파일 형식

참고

(일부 언어 및 국가에서는 이러한 리소스를 사용할 수 없습니다.)

 

MPEG-4 파일 원본은 파일의 오디오/비디오 데이터를 디코딩하지 않습니다.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

파일 확장자 및 MIME 형식

MPEG-4 파일 원본은 다음 파일 이름 확장명을 위한 기본 미디어 원본입니다.

파일 확장명 Description
.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 유형 Description
audio/3gpp 3GPP 오디오
audio/3gpp2 3GPP2 오디오
audio/mp4 MPEG-4 오디오
video/3gpp 3GPP 비디오
video/3gpp2 3GPP2 비디오
video/mp4 MPEG-4 비디오

 

미디어 유형

MP4는 확장 가능한 컨테이너 형식입니다. MP4 사양은 MP4 컨테이너에서 미디어 형식을 설명하기 위한 고정 구조를 정의하지 않습니다. 대신 각 형식에 대해 사용자 지정 구조를 정의할 수 있는 개체 계층 구조를 정의합니다. 형식 설명은 해당 스트림의 샘플 설명('stsd') 상자에 저장됩니다. 샘플 설명 상자에는 샘플 항목 목록이 포함되어 있습니다. 각 샘플 항목에 대해 FOURCC와 유사한 4 바이트 코드는 형식 구조를 정의합니다.

이 확장성은 MPEG-4 파일 원본이 가능한 모든 형식 설명을 인식할 수 없음을 의미합니다. 대신 스트림에 대한 미디어 형식을 만들 때 2계층 접근 방식을 사용합니다. 최소한 모든 미디어 형식에는 다음 특성이 포함됩니다.

attribute Description
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 파일 원본은 다음 샘플 항목을 구문 분석할 수 있습니다.

샘플 입력 코드 주 형식 Subtype Description 참고
'alaw' 오디오 WAVE_FORMAT_ALAW A-Law 코딩
'jpeg' 동영상 MFVideoFormat_MJPG 사진 JPEG 스트림 QuickTime 컨테이너 형식은 'mjpa' 또는 'mjpb' 항목이 있는 동작 JPEG 스트림도 지원하지만 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부 단순 프로필에 사용됩니다.
MFVideoFormat_MP4V 고급 단순 프로필을 비롯한 다른 모든 MPEG-4 파트 2 프로필에 사용됩니다.
'raw ' 오디오 MFAudioFormat_PCM 8비트 PCM 오디오
'sowt' 오디오 MFAudioFormat_PCM 16비트 little-endian PCM 오디오
'twos' 오디오 MFAudioFormat_PCM 16비트 big-endian PCM 오디오 MPEG-4 파일 원본은 오디오 데이터를 little-endian 형식으로 변환합니다.
'ulaw' 오디오 WAVE_FORMAT_MULAW μ 코딩
'vc-1' 동영상 MFVideoFormat_WVC1 VC-1 비디오
'NONE' 오디오 MFAudioFormat_PCM 8비트 또는 16비트 big-endian PCM 오디오 MPEG-4 파일 원본은 오디오 데이터를 little-endian 형식으로 변환합니다.
0x00000000 오디오 MFAudioFormat_PCM 8비트 또는 16비트 big-endian PCM 오디오 MPEG-4 파일 원본은 오디오 데이터를 little-endian 형식으로 변환합니다.
0x6d730002 오디오 WAVE_FORMAT_ADPCM 적응 차등 펄스 코드 변조(ADPCM)
0x6d730011 오디오 WAVE_FORMAT_IMA_ADPCM Adpcm

 

이전 표에 표시되지 않은 다른 코드의 경우 MPEG-4 파일 원본은 하위 형식을 다음과 같이 설정합니다.

  1. subtype = 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에서만 액세스할 수 있습니다.

MPEG-4 원본 및 싱크에 대한 업데이트 Windows 8

  • Windows 8 MPEG-4 원본 및 싱크에 추가된 회전 읽기 및 쓰기 지원입니다. Windows 7 MPEG-4 원본 및 싱크에서는 지원되지 않습니다.

    MPEG-4 원본은 활성 비디오 트랙의 회전 각도를 'mvhd'와 'tkhd'의 회전 각도 합계로 읽습니다.

    Microsoft MPEG-4 싱크는 회전 각도를 'tkhd'로 작성하지만 'mvhd'에서 0도(ID) 행렬을 씁니다. Microsoft MPEG-4 싱크는 단일 비디오 트랙만 지원합니다.

    IPropertyStore는 첫 번째 비디오 트랙의 회전 각도를 'mvhd'와 'tkhd'의 회전 각도 합계로 읽습니다.

    IPropertyStore는 회전 각도가 'mvhd'의 회전 각도에 따라 조정된 후 'tkhd'의 첫 번째 비디오 트랙에 대한 회전 각도만 기록합니다(있는 경우).

  • 영화 조각('moof')은 Windows 8 MPEG-4 원본 및 싱크에서 지원되지만 'mfra'는 지원되지 않습니다.

  • H.263은 Windows 8 MPEG-4 원본에서 지원됩니다.

    MPEG-4 원본은 이제 MPEG-4 파일 형식의 'h263' 및 's263' 2개의 4cc를 MFVideoFormat_H263 미디어 형식에 매핑합니다.

  • Windows 8 MPEG-4 원본에서 MJPEG에 대한 포cc 지원이 추가되었습니다.

    MPEG-4 원본은 'dmb1'의 foucc를 MFVideoFormat_MJPG 미디어 유형에 매핑합니다.

  • Windows 8 MPEG-4 원본에 후리가나 메타데이터 지원이 추가되었습니다.

    MPEG-4 소스는 'soal', 'soar', 'soaa', 'sonm', 'soco'에서 후리가나 메타데이터를 읽습니다. IPropertyStore는 해당 PKEY 집합을 통해 Furignana 메타데이터를 읽습니다.

    다음 표에서는 MPEG-4 파일 형식의 셸 정식 이름, 속성 키 및 상자/태그 ID 간의 매핑을 보여 줍니다.

    필드 속성 키 태그/상자 ID
    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(소코)

     

  • Windows 8 MPEG-4 원본에 스테레오 3D 원자 지원이 추가되었습니다.

  • WINDOWS 8 MPEG-4 원본 및 싱크에 AC3 및 DD+ 지원이 추가되었습니다.

  • 4GB보다 큰 파일은 조각화되지 않은 MP4의 Windows 8 MPEG-4 싱크에서 지원됩니다.

  • 스크러빙은 Windows 8 MPEG-4 원본에서 최적화되었습니다.

    대기 시간을 줄이기 위해 특정 검색 위치에 가장 가까운 두 키 프레임에 대한 정보는 IMFSeekInfo::GetNearestKeyFrames를 통해 노출됩니다. 키 프레임에는 종속 프레임이 없으므로 하나의 프레임만 디코딩한 후 프레임이 표시됩니다. IMFGetService::GetService를 사용하여 미디어 원본, 파이프라인 또는 애플리케이션을 통해 이 인터페이스를 가져옵니다.

    MPEG-4 원본에서 속도를 0으로 설정합니다. 파이프라인이 스크러빙 모드인 경우 속도는 0입니다.

  • SPS 및 PPS는 MPEG-4 싱크의 샘플 데이터에 저장할 수 있습니다.

    MPEG-4 싱크의 MF_MPEG4SINK_SPSPPS_PASSTHROUGH 특성은 SPS 및 PPS를 입력 샘플(H.264 비디오 데이터)과 함께 저장할 수 있도록 정의됩니다. 생성된 mp4 클립은 Windows 7 MPEG-4 원본 등에서 재생할 수 있습니다.

  • MPEG-4 싱크의 입력 샘플에서 SPS 및 PPS를 추출할 수 있습니다.

    MPEG-4 싱크의 입력 미디어 형식에 대한 MF_MT_MPEG_SEQUENCE_HEADER 통해 SPS 및 PPS를 설정하지 않으면 MPEG-4 싱크는 입력 샘플에서 SPS 및 PPS를 추출하려고 시도합니다. MPEG-4 싱크는 SPS 및 PPS가 없는 모든 입력 샘플은 디코딩할 수 없으므로 첫 번째 SPS 및 PPS를 발견할 때까지 입력 샘플을 무시합니다.

  • AVC 구성 레코드의 3D 정보는 조각화되지 않은 MP4에 대해 지원됩니다.

  • NALU 길이는 H.264 압축 샘플에 노출되어 H.264 VLD DXVA 디코딩을 최적화합니다.

    MPEG-4 원본 집합은 출력 미디어 형식의 MFVideoFormat_H264 또는 MFVideoFormat_h264 MF_NALU_LENGTH_SET. 각 출력 샘플에서 MF_NALU_LENGTH_INFORMATION Blob을 설정하고, 하나의 압축된 샘플에서 다른 NALU의 길이가 4바이트인 NALU 길이를 설정합니다.

  • MP4 원본에서 MPEG2 ADTS 오디오에 대한 지원이 추가되었습니다.

미디어 원본 및 싱크

Media Foundation의 MPEG-4 지원

미디어 파운데이션에서 지원되는 미디어 형식