Windows Media Audio Encoder
Windows Media Audio エンコーダーでは、オーディオ ストリームをエンコードします。 エンコーダーでは、エンコードされた出力の 3 つのカテゴリ (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 Audio Lossless |
インターフェイス
オーディオ エンコーダー オブジェクトでは、オブジェクトを DirectX Media Object (DMO) として使用できるよう、IMediaObject インターフェイスが公開され、オブジェクトを Media Foundation Transform (MFT) として使用できるよう、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 エンコードが使用されるか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_BMAX | ピーク ビット レートでの制約付き可変ビット レート (VBR) ストリームのバッファー ウィンドウをミリ秒単位で指定します。
Standard、Professional。 読み取りと書き込みが可能です。 |
MFPKEY_CHECKDATACONSISTENCY2P | 2 パス VBR エンコードを実行するとき、パス間のデータ整合性をエンコーダーで確認するか指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_CONSTRAINDECLATENCY | デコーダーの最大遅延要件によってエンコーダーが制約されるか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_CONSTRAINENCCOMPLEXITY | エンコード アルゴリズムの複雑性が制約されるか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_CONSTRAINENCLATENCY | 最大遅延要件によってエンコーダーが制約されるか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_CONSTRAIN_ENUMERATED_VBRQUALITY | エンコーダーによって列挙されるモードが、品質要件を満たすモードに限定されるか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DECODERCOMPLEXITYPROFILE | エンコードされたコンテンツの複雑性プロファイルを指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_DESIRED_VBRQUALITY | VBR エンコードに望ましい品質レベルを指定します。
Standard、Professional、Lossless。 書き込み専用です。 |
MFPKEY_DYN_ALLOW_NOISESUB | エンコーダーでノイズ置換を使用するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_ALLOW_PCMRANGELIMITING | エンコーダーで PCM 範囲制限を使用するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_BANDTRUNC_BWCEIL | エンコーダーのバンド切り捨てによって許容される最大コード化帯域幅を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_BANDTRUNC_BWFLOOR | エンコーダーのバンド切り捨てによって許容される最小コード化帯域幅を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_BANDTRUNC_QCEIL | 最小コード化帯域幅が許可される品質を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_BANDTRUNC_QFLOOR | 最大コード化帯域幅が許可される品質を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_BANDTRUNCATION | エンコーダーでバンド切り捨てを実行するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_SIMPLEMASK | Windows Media Audio エンコーダーのバージョン 7 で実行されるマスク計算のスタイルをエンコーダーで使用するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_STEREO_PREPROC | エンコーダーでステレオ画像処理を実行するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_VBR_BAVG | 平均制御可能な VBR エンコードを使用するように構成されたエンコーダーのバッファー ウィンドウをミリ秒単位で指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_DYN_VBR_RAVG | 平均制御可能な VBR エンコードを使用するように構成されたエンコーダーの平均ビット レートを 1 秒あたりのビット数で指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_ENCCOMPLEXITY | エンコード アルゴリズムの複雑性を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_ENDOFPASS | エンコード パスの終了を指定します。
Standard、Professional。 書き込み専用です。 |
MFPKEY_ENHANCED_WMA | コア エンコーダーで "Plus" 機能を使用するか指定します。
Professional。 読み取りと書き込みが可能です。 |
MFPKEY_MAXDECLATENCYMS | デコーダーの最大遅延をミリ秒単位で指定します。
Standard、Professional、Lossless。 書き込み専用です。 |
MFPKEY_MAXENCLATENCYMS | エンコーダーの最大遅延をミリ秒単位で指定します。
Standard、Professional、Lossless。 書き込み専用です。 |
MFPKEY_MOST_RECENTLY_ENUMERATED_VBRQUALITY | 最近列挙された出力の種類の VBR 品質レベルを指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_PASSESRECOMMENDED | エンコーダーでサポートされるパスの最大数を指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_PASSESUSED | コンテンツをエンコードする目的でエンコーダーで使用されるパスの数を指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_PEAKCONSTRAINED | エンコーダーがピーク ビット レートによって制約されるか指定します。
Standard、Professional。 読み取りと書き込みが可能です。 |
MFPKEY_PREFERRED_FRAMESIZE | フレームあたりのサンプルの推奨数を指定します。
Professional。 読み取りと書き込みが可能です。 |
MFPKEY_REQUESTING_A_FRAMESIZE | 推奨フレーム サイズをエンコーダーで使用するか指定します。
Professional。 読み取りと書き込みが可能です。 |
MFPKEY_RMAX | 制約付き 2 パス可変ビット レート (VBR) エンコードに使用されるピーク ビット レートを 1 秒あたりのビット数で指定します。
Standard、Professional。 読み取りと書き込みが可能です。 |
MFPKEY_STAT_BAVG | エンコードされたストリームの平均バッファー ウィンドウをミリ秒単位で指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_STAT_BMAX | エンコードされたストリームの最大バッファー ウィンドウをミリ秒単位で指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_STAT_RAVG | エンコードされたストリームの平均ビット レートを 1 秒あたりのビット数で指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_STAT_RMAX | エンコードされたストリームの最大ビット レートを 1 秒あたりのビット数で指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_VBRENABLED | エンコーダーで VBR エンコードを使用するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_WMA_ELEMENTARY_STREAM | このプロパティは現在、Windows Media Audio コーデックでは使用されていません。 |
MFPKEY_WMADRC_AVGREF | オーディオ コンテンツの平均ボリューム レベルを指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_WMADRC_PEAKREF | オーディオ コンテンツで発生する最大ボリューム レベルを指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_WMAENC_AVGBYTESPERSEC | VBR でエンコードされたオーディオの 1 秒あたりの平均バイト数を指定します。
Standard、Professional、Lossless。 読み取り専用です。 |
MFPKEY_WMAENC_BUFFERLESSCBR | エンコーダーでフレームごとに 1 つの WMA パケットを生成するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_WMAENC_GENERATE_DRC_PARAMS | エンコーダーでダイナミック レンジ制御パラメーターを生成するか指定します。
Standard、Professional、Lossless。 読み取りと書き込みが可能です。 |
MFPKEY_WMAENC_ORIGWAVEFORMAT | 入力オーディオ コンテンツを記述する WAVEFORMATEX 構造体を指定します。
Standard、Professional。 読み取りと書き込みが可能です。 |
MFPKEY_WMAENC_RTSPDIF | エンコーダーでリアルタイム S/PDIF エンコードを有効にするか指定します。
Professional。 読み取りと書き込みが可能です。 |
必要条件
要件 | Value |
---|---|
クライアント |
Windows XP、Windows Vista、Windows 7 |
ヘッダー |
|
[DLL] |
|
関連項目