다음을 통해 공유


MPEG-4 2부 비디오 디코더

MPEG4 2부 비디오 디코더는 MPEG4 2부 표준에 따라 인코딩된 비디오 스트림을 디코딩합니다.

CoCreateInstance를 호출하여 MPEG4 2부 비디오 디코더의 인스턴스를 만들 수 있습니다. DMO(DirectX Media Object)로 동작하는 디코더의 인스턴스를 만들려면 클래스 식별자 CLSID_CMpeg4sDecMediaObject 사용합니다. MFT(Media Foundation Transform)로 동작하는 디코더의 인스턴스를 만들려면 클래스 식별자 CLSID_CMpeg4sDecMFT 사용합니다.

입력 형식

MPEG4 2부 비디오 디코더는 다음과 같은 입력 미디어 유형을 지원합니다.

  • MEDIASUBTYPE_M4S2
  • MEDIASUBTYPE_m4s2
  • MEDIASUBTYPE_MP4V
  • MEDIASUBTYPE_mp4v
  • MEDIASUBTYPE_MP4S(사용되지 않음)
  • MEDIASUBTYPE_mp4s(사용되지 않음)

출력 형식

MPEG4 2부 비디오 디코더는 DMO 역할을 할 때 다음과 같은 출력 미디어 하위 형식을 지원합니다.

  • MEDIASUBTYPE_YV12
  • MEDIASUBTYPE_NV12
  • MEDIASUBTYPE_YUY2
  • MEDIASUBTYPE_UYVY
  • MEDIASUBTYPE_YVYU
  • MEDIASUBTYPE_NV11
  • MEDIASUBTYPE_RGB32
  • MEDIASUBTYPE_RGB24
  • MEDIASUBTYPE_ RGB565
  • MEDIASUBTYPE_RGB555
  • MEDIASUBTYPE_RGB8

MPEG4 2부 비디오 디코더는 MFT 역할을 할 때 다음과 같은 출력 미디어 하위 형식을 지원합니다.

  • MEDIASUBTYPE_NV12
  • MEDIASUBTYPE_YV12

형식

MPEG4 2부 비디오 디코더는 다음 형식을 허용합니다.

DMO에 대한 인터페이스

MPEG4 2부 비디오 디코더의 인스턴스를 DMO로 만드는 경우 디코더는 다음 인터페이스를 노출합니다.

CoCreateInstance를 호출하여 IMediaObject 인터페이스를 가져올 수 있으며 QueryInterface호출하여 ICodecAPI 인터페이스를 가져올 수 있습니다.

MFT에 대한 인터페이스

MPEG2 2부 비디오 디코더의 인스턴스를 MFT로 만드는 경우 디코더는 다음 인터페이스를 노출합니다.

CoCreateInstance를 호출하여 IMFTransform 인터페이스에 대한 포인터를 가져올 수 있으며 IMFTransform::GetAttributes를 호출하여 IMFAttributes 인터페이스에 대한 포인터를 가져올 수 있습니다. MFT에서 QueryInterface를 호출하여 IMFQualityAdvise 또는 IMFQualityAdvise2 인터페이스에 대한 포인터를 가져올 수 있습니다. MFGetService호출하고 서비스 식별자 MF_RATE_CONTROL_SERVICE 전달하여 IMFRateControl 또는 IMFRateSupport 인터페이스에 대한 포인터를 가져올 수 있습니다.

프로필 및 수준

MPEG4 사양은 각각 인코더가 인코딩된 스트림을 생성하는 데 사용할 수 있는 도구를 지정하는 여러 프로필을 정의합니다. MPEG4 Part2 Video Decoder는 이러한 프로필 중 두 가지인 단순 시각적 프로필 및 고급 단순 프로필을 지원합니다. 즉, MPEG4 2부 비디오 디코더는 단순 시각적 프로필 또는 고급 단순 프로필에 따라 인코딩된 스트림을 디코딩할 수 있습니다.

단순 시각적 프로필은 프로그레시브 모드에서 낮은 비트 전송률 비디오의 기본 전송을 지원합니다. 인트라 및 예측 그림만 지원합니다. 또한 H.263 기준 프로필과 이전 버전과 호환되는 짧은 헤더 모드를 지원합니다. Windows 10부터 MPEG-4 Part 2 Video Decoder는 사용자 지정 그림 크기를 지원하는 H.263v2(H.263+)도 지원합니다.

Advanced Simple Profile은 단순 시각적 프로필의 모든 도구를 지원하며, 인터레이스된 비디오, B 프레임, 쿼터펠 모션 보정, 추가 양자화 테이블 및 전역 동작 보정을 지원합니다.

MPEG4 사양은 인코더에서 생성된 출력 스트림에 대한 제약 조건을 각각 지정하는 여러 수준도 정의합니다.

다음 표에서는 MPEG4 2부 비디오 디코더에서 지원하는 일반적인 해상도와 함께 프로필 및 수준을 보여 줍니다.

프로필 수준 일반적인 해결 방법
단순 시각적 개체 0 176 x 144
단순 시각적 개체 1 176 x 144
단순 시각적 개체 2 352 x 288
단순 시각적 개체 3 352 x 288
SimpleVisual 4a 640 x 480
단순 시각적 개체 5 720 x 576
고급 단순 0 176 x 144
고급 단순 1 176 x 144
고급 단순 2 352 x 288
고급 단순 3 352 x 288
고급 단순 3b 352 x 288
고급 단순 4 352 x 756
고급 단순 5 720 x 576

 

프로필 및 수준에 대한 자세한 내용은 MPEG4 2부 사양(ISO/IEC 14496-2): 정보 기술 -- 시청각 개체 코딩 - 2부: 시각적 개체를 참조하세요.

디코더 속성

MPEG4 2부 비디오 디코더에서 속성을 설정하려면 ICodecAPI 인터페이스 또는 IMFAttributes 인터페이스를 사용합니다.

MPEG4 2부 비디오 디코더는 다음 속성을 지원합니다.

속성 설명 기본값
CODECAPI_AVDecVideoSWPowerLevel 전원 수준을 지정합니다.
Windows 7
쓰기 전용입니다.
100
CODECAPI_AVDecVideoThumbnailGenerationMode 미리 보기 생성 모드를 지정합니다.
Windows 7
쓰기 전용입니다.
VARIANT_FALSE

 

설명

RGB 미디어 하위 형식에 대한 GUID(Globally Unique Identifier)는 디코더가 DMO 또는 MFT 역할을 하는지에 따라 다릅니다. 디코더가 DMO 또는 MFT 역할을 하는지 여부에 관계없이 RGB가 아닌 미디어 하위 형식에 대한 GUID는 동일합니다. 미디어 하위 형식을 나타내는 GUID에 대한 자세한 내용은 미디어 형식을 참조 하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2008 R2 [데스크톱 앱만 해당]
헤더
Wmcodecdsp.h
DLL
MP4SDecd.dll

참고 항목

코덱 개체