Windows Media 오디오 인코더

Windows Media Audio 인코더는 오디오 스트림을 인코딩합니다. 인코더는 인코딩된 출력의 세 가지 범주인 Windows Media Audio Standard, Windows Media Audio Professional 및 Windows Media Audio Lossless를 지원합니다.

클래스 식별자

Windows Media Audio Encoder의 CLSID(클래스 식별자)는 상수 CLSID_CWMAEncMediaObject 표시됩니다. CoCreateInstance를 호출하여 오디오 인코더의 인스턴스를 만들 수 있습니다.

입력 형식

다음 표에서는 Windows Media Audio 인코더에서 지원하는 입력 범주를 나타내는 오디오 형식 태그를 보여 줍니다. 인코더에 대한 입력 및 출력 형식을 설정하는 방법에 대한 자세한 내용은 오디오 인코딩 구성을 참조 하세요.

서식 태그 상수 태그 값 서식 지정 오디오 형식
WAVE_FORMAT_PCM 0x0001 PCM 형식
WAVE_FORMAT_IEEE_FLOAT 0x0003 IEEE 부동 소수점
WAVE_FORMAT_EXTENSIBLE 0xFFFE WAVEFORMATEXTENSIBLE 구조체의 PCM/IEEE 형식

 

출력 형식

다음 표에서는 Windows Media Audio 인코더에서 지원하는 출력 범주를 나타내는 오디오 형식 태그를 보여 줍니다.

서식 태그 상수 태그 값 서식 지정 오디오 형식
WAVE_FORMAT_WMAUDIO2 0x0161 Windows Media Audio Standard
WAVE_FORMAT_WMAUDIO3 0x0162 Windows Media Audio Professional
WAVE_FORMAT_WMAUDIO_LOSSLESS 0x0163 Windows Media 오디오 무손실

 

인터페이스

오디오 엔도더 개체는 개체를 DMO(DirectX Media Object)로 사용할 수 있도록 IMediaObject 인터페이스를 노출하고, 개체를 MFT(Media Foundation Transform)로 사용할 수 있도록 IMFTransform 인터페이스를 노출합니다.

Windows Media Audio 인코더는 가져오는 인터페이스와 실행 중인 Windows 버전에 따라 DMO 또는 MFT로 동작합니다. 다음 표에서는 오디오 인코더가 DMO 또는 MFT로 동작하는 조건을 보여 줍니다.

운영 체제 인코더 동작
Windows XP Windows Media Audio 인코더는 항상 DMO로 동작합니다.
Windows Vista 기본적으로 Windows Media Audio 인코더는 DMO로 동작합니다. 오디오 인코더에서 IMFTransform 인터페이스 또는 IPropertyStore 인터페이스를 가져오는 경우 MFT로 동작합니다.
Windows 7 기본적으로 Windows Media Audio 인코더는 DMO로 동작합니다. 오디오 인코더에서 IMFTransform 인터페이스를 가져오는 경우 MFT로 동작합니다.

 

인코더 속성

Windows Media Audio 인코더는 다음 속성을 지원합니다.

속성 설명
MFPKEY_AVGCONSTRAINED 인코더가 평균 제어 가능한 VBR 인코딩을 사용하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_BMAX 최대 비트 속도로 제한된 VBR(가변 비트 전송률) 스트림의 버퍼 창을 밀리초 단위로 지정합니다.
Windows XP 이상.
Standard, Professional.
읽기/쓰기입니다.
MFPKEY_CHECKDATACONSISTENCY2P 2단계 VBR 인코딩을 수행할 때 인코더가 패스 간에 데이터 일관성을 위해 검사 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_CONSTRAINDECLATENCY 인코더가 최대 디코더 대기 시간 요구 사항에 의해 제한되는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_CONSTRAINENCCOMPLEXITY 인코딩 알고리즘의 복잡성이 제한되는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_CONSTRAINENCLATENCY 인코더가 최대 대기 시간 요구 사항에 의해 제한되는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_CONSTRAIN_ENUMERATED_VBRQUALITY 인코더에 의해 열거된 모드가 품질 요구 사항을 충족하는 모드로 제한되는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DECODERCOMPLEXITYPROFILE 인코딩된 콘텐츠의 복잡성 프로필을 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_DESIRED_VBRQUALITY VBR 인코딩에 원하는 품질 수준을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
쓰기 전용입니다.
MFPKEY_DYN_ALLOW_NOISESUB 인코더가 노이즈 대체를 사용하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_ALLOW_PCMRANGELIMITING 인코더가 PCM 범위 제한을 사용하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_BANDTRUNC_BWCEIL 인코더에서 대역 잘림에 허용되는 최대 코딩된 대역폭을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_BANDTRUNC_BWFLOOR 인코더에서 대역 잘림에 허용되는 최소 코딩된 대역폭을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_BANDTRUNC_QCEIL 최소 코딩된 대역폭이 허용되는 품질을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_BANDTRUNC_QFLOOR 최대 코딩된 대역폭이 허용되는 품질을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_BANDTRUNCATION 인코더가 대역 잘림을 수행할지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_SIMPLEMASK 인코더가 Windows Media Audio 인코더 버전 7에서 수행하는 마스크 계산 스타일을 사용하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_STEREO_PREPROC 인코더가 스테레오 이미지 처리를 수행할지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_VBR_BAVG 평균 제어 가능한 VBR 인코딩을 사용하도록 구성된 인코더의 버퍼 창을 밀리초 단위로 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_DYN_VBR_RAVG 평균 제어 가능한 VBR 인코딩을 사용하도록 구성된 인코더의 평균 비트 속도를 초당 비트 단위로 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_ENCCOMPLEXITY 인코딩 알고리즘의 복잡성을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_ENDOFPASS 인코딩 패스의 끝을 지정합니다.
Windows XP 이상.
Standard, Professional.
쓰기 전용입니다.
MFPKEY_ENHANCED_WMA 코어 인코더가 "Plus" 기능을 사용하는지 여부를 지정합니다.
Windows Vista 이상.
Professional.
읽기/쓰기입니다.
MFPKEY_MAXDECLATENCYMS 디코더의 최대 대기 시간(밀리초)을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
쓰기 전용입니다.
MFPKEY_MAXENCLATENCYMS 인코더의 최대 대기 시간(밀리초)을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
쓰기 전용입니다.
MFPKEY_MOST_RECENTLY_ENUMERATED_VBRQUALITY 가장 최근에 열거된 출력 형식의 VBR 품질 수준을 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_PASSESRECOMMENDED 인코더에서 지원하는 최대 패스 수를 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_PASSESUSED 인코더가 콘텐츠를 인코딩하는 데 사용할 패스 수를 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_PEAKCONSTRAINED 인코더가 최고 비트 속도로 제한되는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional.
읽기/쓰기입니다.
MFPKEY_PREFERRED_FRAMESIZE 프레임당 기본 설정 샘플 수를 지정합니다.
Windows Vista 이상.
Professional.
읽기/쓰기입니다.
MFPKEY_REQUESTING_A_FRAMESIZE 인코더에서 기본 프레임 크기를 사용해야 하는지 여부를 지정합니다.
Windows Vista 이상.
Professional.
읽기/쓰기입니다.
MFPKEY_RMAX 제한된 2-pass VBR(가변 비트 비율) 인코딩에 사용되는 최고 비트 속도를 초당 비트 단위로 지정합니다.
Windows XP 이상.
Standard, Professional.
읽기/쓰기입니다.
MFPKEY_STAT_BAVG 인코딩된 스트림의 평균 버퍼 창을 밀리초 단위로 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_STAT_BMAX 인코딩된 스트림의 최대 버퍼 창(밀리초)을 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_STAT_RAVG 인코딩된 스트림의 평균 비트 속도를 초당 비트 단위로 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_STAT_RMAX 인코딩된 스트림의 최대 비트 속도를 초당 비트 단위로 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_VBRENABLED 인코더가 VBR 인코딩을 사용하는지 여부를 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_WMA_ELEMENTARY_STREAM 이 속성은 현재 Windows Media Audio 코덱에서 사용되지 않습니다.
MFPKEY_WMADRC_AVGREF 오디오 콘텐츠의 평균 볼륨 수준을 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_WMADRC_PEAKREF 오디오 콘텐츠에서 발생하는 가장 높은 볼륨 수준을 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_WMAENC_AVGBYTESPERSEC VBR로 인코딩된 오디오의 초당 평균 바이트를 지정합니다.
Windows XP 이상.
Standard, Professional, Lossless.
읽기 전용.
MFPKEY_WMAENC_BUFFERLESSCBR 인코더가 프레임당 1개의 WMA 패킷을 생성해야 하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_WMAENC_GENERATE_DRC_PARAMS 인코더가 동적 범위 컨트롤 매개 변수를 생성해야 하는지 여부를 지정합니다.
Windows Vista 이상.
Standard, Professional, Lossless.
읽기/쓰기입니다.
MFPKEY_WMAENC_ORIGWAVEFORMAT 입력 오디오 콘텐츠를 설명하는 WAVEFORMATEX 구조를 지정합니다.
Windows XP 이상.
Standard, Professional.
읽기/쓰기입니다.
MFPKEY_WMAENC_RTSPDIF 인코더에서 실시간 S/PDIF 인코딩을 사용하도록 설정할지 여부를 지정합니다.
Windows Vista 이상.
Professional.
읽기/쓰기입니다.

 

요구 사항

요구 사항
클라이언트
Windows XP, Windows Vista 또는 Windows 7
헤더
Wmcodecdsp.h
DLL
Wmadmoe.dll

참고 항목

코덱 개체

코덱 구현