Windows Media 비디오 7/8 인코더
Windows Media Video 7/8 인코더는 이전 버전의 Windows Media Video 인코더를 구현합니다.
클래스 식별자
Windows Media Video 7/8 인코더의 CLSID(클래스 식별자)가 CLSID_CWMVXEncMediaObject. CoCreateInstance를 호출하여 인코더의 instance 만들 수 있습니다.
인터페이스
비디오 인코더 개체는 개체를 DMO(DirectX Media Object)로 사용할 수 있도록 IMediaObject 인터페이스를 노출하고, 개체를 MFT(Media Foundation Transform)로 사용할 수 있도록 IMFTransform 인터페이스를 노출합니다.
비디오 인코더는 가져오는 인터페이스와 실행 중인 Windows 버전에 따라 DMO 또는 MFT로 작동합니다. 다음 표에서는 비디오 인코더가 DMO 또는 MFT로 동작하는 조건을 보여 줍니다.
운영 체제 | 인코더 동작 |
---|---|
Windows XP | Windows Media 비디오 인코더는 항상 DMO로 작동합니다. |
Windows Vista 및 Windows 7 | 기본적으로 Windows Media 비디오 인코더는 DMO로 작동합니다. 비디오 인코더에서 IMFTransform 인터페이스를 가져오는 경우 MFT로 동작합니다. |
입력 형식
Windows Media Video 인코더는 DMO 역할을 할 때 다음과 같은 입력 미디어 하위 형식을 지원합니다.
- MEDIASUBTYPE_IYUV
- MEDIASUBTYPE_I420
- MEDIASUBTYPE_YV12
- MEDIASUBTYPE_NV11
- MEDIASUBTYPE_NV12
- MEDIASUBTYPE_YUY2
- MEDIASUBTYPE_UYVY
- MEDIASUBTYPE_YVYU
- MEDIASUBTYPE_RGB32
- MEDIASUBTYPE_RGB24
- MEDIASUBTYPE_RGB565
- MEDIASUBTYPE_RGB555
- MEDIASUBTYPE_RGB8
- MEDIASUBTYPE_PHOTOMOTION
Windows Media 비디오 인코더는 MFT 역할을 할 때 다음과 같은 입력 미디어 하위 형식을 지원합니다.
- MFVideoFormat_IYUV
- MFVideoFormat_I420
- MFVideoFormat_YV12
- MFVideoFormat_NV11
- MFVideoFormat_NV12
- MFVideoFormat_YUY2
- MFVideoFormat_UYVY
- MFVideoFormat_YVYU
- MFVideoFormat_RGB32
- MFVideoFormat_RGB24
- MFVideoFormat_RGB565
- MFVideoFormat_RGB555
- MFVideoFormat_RGB8
- MEDIASUBTYPE_PHOTOMOTION
출력 형식
다음 표에서는 Windows Media Video 7/8 인코더에서 지원하는 출력 형식에 대한 4자 코드(FOURC)를 보여 줍니다.
범주 | Fourcc |
---|---|
Windows Media 비디오 7 | "WMV1" |
Windows Media 비디오 8 | "WMV2" |
속성
Windows Media Video 7/8 인코더는 다음 속성을 지원합니다.
속성 | 설명 |
---|---|
MFPKEY_ASFOVERHEADPERFRAME | 압축된 콘텐츠를 저장하는 데 사용되는 컨테이너에 필요한 오버헤드(패킷당 바이트)를 지정합니다.
쓰기 전용입니다. |
MFPKEY_AVGFRAMERATE | 비디오 콘텐츠의 평균 프레임 속도를 초당 프레임 단위로 지정합니다.
읽기 전용입니다. |
MFPKEY_BAVG | 평균 비트 전송률( MFPKEY_RAVG 지정)으로 제한된 VBR(가변 비트 전송률) 스트림의 버퍼 창을 밀리초 단위로 지정합니다.
읽기/쓰기입니다. |
MFPKEY_BMAX | 최대 비트 전송률( MFPKEY_RMAX 지정)으로 제한된 VBR(가변 비트 전송률) 스트림의 버퍼 창을 밀리초 단위로 지정합니다.
읽기/쓰기입니다. |
MFPKEY_BUFFERFULLNESSINFIRSTBYTE | 인코딩된 비디오 비트 스트림에 모든 키 프레임이 있는 버퍼 충만 값이 포함되어 있는지 여부를 지정합니다.
읽기 전용입니다. |
MFPKEY_CODEDFRAMES | 코덱으로 인코딩된 비디오 프레임 수를 지정합니다.
읽기 전용입니다. |
MFPKEY_CODEDNONZEROFRAMES | 실제로 데이터를 포함하는 코덱으로 인코딩된 비디오 프레임 수를 지정합니다.
읽기 전용입니다. |
MFPKEY_COMPLEXITY | 이 속성은 MFPKEY_COMPLEXITYEX 대체됩니다. |
MFPKEY_COMPLEXITYEX | 인코더 알고리즘의 복잡성을 지정합니다.
쓰기 전용입니다. |
MFPKEY_CRISP | 코덱 출력에서 동작 부드러움과 이미지 품질 간의 절충을 숫자로 표현합니다.
쓰기 전용입니다. |
MFPKEY_DECODERCOMPLEXITYPROFILE | 인코딩된 콘텐츠가 준수하는 디바이스 규칙 템플릿을 지정합니다.
읽기 전용입니다. |
MFPKEY_DECODERCOMPLEXITYREQUESTED | 비디오 인코딩에 사용할 디바이스 규칙 템플릿을 지정합니다.
쓰기 전용입니다. |
MFPKEY_DROPPEDFRAMES | 인코딩 중에 삭제된 비디오 프레임 수를 지정합니다.
읽기 전용입니다. |
MFPKEY_ENDOFPASS | 인코딩 패스의 끝을 지정합니다.
쓰기 전용입니다. |
MFPKEY_FOURCC | 사용하려는 인코더를 식별하는 FOURCC를 지정합니다.
쓰기 전용입니다. |
MFPKEY_INTERLACEDCODINGENABLED | 코덱 출력이 인터레이스될지 여부를 지정합니다.
쓰기 전용입니다. |
MFPKEY_KEYDIST | 코덱 출력의 키 프레임 사이의 최대 시간(밀리초)을 지정합니다.
쓰기 전용입니다. |
MFPKEY_PASSESRECOMMENDED | 코덱에서 지원하는 최대 패스 수를 지정합니다.
읽기 전용입니다. |
MFPKEY_PASSESUSED | 코덱이 콘텐츠를 인코딩하는 데 사용할 패스 수를 지정합니다.
읽기/쓰기입니다. |
MFPKEY_PRODUCEDUMMYFRAMES | 인코더가 중복 프레임에 대한 비트 스트림에 더미 프레임 항목을 생성하는지 여부를 지정합니다.
쓰기 전용입니다. |
MFPKEY_QPPERFRAME | QP를 지정합니다.
쓰기 전용입니다. |
MFPKEY_RAVG | 2-pass VBR(가변 비트 속도) 인코딩에 사용되는 평균 비트 속도를 초당 비트 단위로 지정합니다.
읽기/쓰기입니다. |
MFPKEY_RMAX | 제한된 2-pass VBR(가변 비트 속도)에 사용되는 최고 비트 속도를 초당 비트 단위로 지정합니다.
읽기/쓰기입니다. |
MFPKEY_TOTALFRAMES | 인코딩 프로세스 중에 인코더에 전달되는 비디오 프레임 수를 지정합니다.
읽기 전용입니다. |
MFPKEY_VBRENABLED | 코덱이 VBR(가변 비트 비율) 인코딩을 사용할지 여부를 지정합니다.
읽기/쓰기입니다. |
MFPKEY_VBRQUALITY | 품질 기반(1-pass) VBR(가변 비트 비율) 인코딩에 대한 실제 품질 수준을 지정합니다.
쓰기 전용입니다. |
MFPKEY_VIDEOWINDOW | 모델 버퍼에 맞을 수 있는 콘텐츠의 양을 밀리초 단위로 지정합니다.
쓰기 전용입니다. |
MFPKEY_ZEROBYTEFRAMES | 이전 프레임과 중복되었으므로 건너뛴 비디오 프레임의 수를 지정합니다.
읽기 전용 |
요구 사항
요구 사항 | 값 |
---|---|
클라이언트 |
Windows XP, Windows Vista 또는 Windows 7 |
헤더 |
|
DLL |
|
추가 정보