次の方法で共有


エンコード プロパティ

Windows Media Audio エンコーダーと Windows Media Video エンコーダーでは、さまざまなエンコード モードがサポートされています。 これらのモードは、通常、エンコーダー Media Foundation 変換 (MFT) のプロパティを設定することによって構成されます。 ファイル エンコードを実行するには、WMContainer レベルのコンポーネントを使用するか、部分的なトポロジを構築するかに関係なく、エンコードのモードとストリームのメディアの種類に応じてプロパティを設定してエンコーダーを適切に構成する必要があります。 エンコーダーと、ASF ファイルの書き込みに使用するオブジェクト (ASF ファイル シンクまたは ASF マルチプレクサー) の両方で、同じプロパティ セットを設定する必要があります。

エンコーダーのプロパティは wmcodecdsp.h で定義されています。 エンコーダーの構成に使用される特定のプロパティは、 IPropertyStore インターフェイスのメソッドを使用して設定されます。

オーディオ ストリームのプロパティ

次の表に、オーディオ ストリームのエンコーダー構成を示します。

エンコードの種類 プロパティ名 - 値
定数ビット レート エンコード MFPKEY_VBRENABLED - FALSE (省略可能) 既定では、MFPKEY_VBRENABLEDは FALSE に設定されます。
可変ビット レート エンコード Quality-Based する MFPKEY_VBRENABLED - 有効
MFPKEY_PASSESUSED - 1 (省略可能)
既定では、MFPKEY_PASSESUSEDは 1 に設定されています。
MFPKEY_DESIRED_VBRQUALITY - 0 ~ 100
制約のない可変ビット レート エンコード MFPKEY_VBRENABLED - TRUE
MFPKEY_使用されたパス数 - 2
可変ビット レート エンコード Peak-Constrained する MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX - 最大ビット レート
MFPKEY_BMAX - 最大バッファー ウィンドウ

 

ビデオ ストリームのプロパティ

次の表に、ビデオ ストリームのエンコーダー構成を示します。

エンコードの種類 プロパティ名
定数ビット レート エンコード MFPKEY_VBRENABLED - FALSE (省略可能)
既定では、MFPKEY_VBRENABLEDは FALSE に設定されています。
MFPKEY_VIDEOWINDOW - バッファーウィンドウ
可変ビット レート エンコード Quality-Based する MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 1 (省略可能)
既定では、MFPKEY_PASSESUSEDは 1 に設定されています。
MFPKEY_DESIRED_VBRQUALITY - 0 から 100 まで
制約のない可変ビット レート エンコード MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
可変ビット レート エンコード Peak-Constrained する MFPKEY_VBRENABLED - TRUE
MFPKEY_PASSESUSED - 2
MFPKEY_RMAX - 最大ビット レート
MFPKEY_BMAX - 最大バッファー ウィンドウ

 

エンコーダーのプロパティ ストアの構成

エンコード セッションの前にエンコードの種類とさまざまなストリーム固有の設定を指定して、エンコーダーを構成する必要があります。 出力ファイルの ASF ヘッダー オブジェクトを表す ASF ContentInfo オブジェクト のプロパティ ストアでエンコーダー プロパティを設定する必要もあります。

エンコーダー MFT を使用している場合:

  1. エンコーダーの IMFTransform インターフェイスの使用に関する説明に従って 、エンコーダー MFT の IMFTransform インターフェイスへの参照を取得します。
  2. IPropertyStore インターフェイスに対するエンコーダー MFT のクエリ。
  3. IPropertyStore::SetValue を呼び出して必要なプロパティを設定します。

組み込みのエンコーダー アクティブ化オブジェクトを使用していて、ASF ファイル シンクを既に作成して構成している場合は、ASF メディア シンクのプロパティ ストアを MFCreateWMAEncoderActivate または MFCreateWMVEncoderActivate に渡すことができます。 エンコーダーは、アプリケーションで指定された設定に基づいて自動的に構成されます。 詳細については、「 エンコーダーのアクティブ化オブジェクトの使用」で説明されている手順を参照してください。

アクティブ化オブジェクトを使用した Media Foundation オブジェクトの作成の詳細については、「 アクティブ化オブジェクト」を参照してください。

エンコーダー MFT のインスタンス化の

Windows Media Encoders