ストリームの構成

プロファイルに必要なのは、少なくとも1つのストリームだけです。 他のオプションを使用すると、より高度な機能にアクセスできますが、少なくとも1つのストリームで ASF ファイルを作成できます。 複雑なプロファイルを作成する前に、ストリームを構成する方法について理解しておくことが重要です。

プロファイルを使用するために、ストリームは2種類に分割できます。これは Windows メディアコーデックで圧縮されたものと、どのコーデックでも処理されない任意のストリームです。 オーディオストリームとビデオストリームは、Windows メディアコーデックを使用する種類です。 もちろん、ストリームにはサードパーティのコーデックで圧縮されたオーディオまたはビデオが含まれる場合がありますが、そのようなストリームを構成するプロセスは特殊なケースです。 詳細については、「 サードパーティ製コーデックを使用して ASF ファイルを作成するには」を参照してください。

次の一覧は、ストリームを構成するプロセスをまとめたものです。

  1. ストリームのストリーム構成オブジェクトを取得します。
    • Windows メディアコーデックのいずれかを使用してストリームを作成する場合は、 IWMCodecInfo3のメソッドを使用して、ストリーム構成オブジェクトをコーデック形式として取得する必要があります。
    • ストリームが任意の型である場合は、 Iwmprofile:: CreateNewStreamを使用して空のストリーム構成オブジェクトを取得します。
  2. 必要に応じてストリームを構成します。
    • すべての種類のストリームには、名前、接続名、およびストリーム番号を割り当てる必要があります。
    • Windows メディアコーデックを使用するストリームは、コーデック形式の定義済みの方法でのみ変更する必要があります。 オーディオストリームの場合は、2パス VBR の可変ビットレート (VBR) 設定のみを変更する必要があります。 ビデオストリームは、目的のフレームプロパティを使用して構成する必要があります。
    • 任意のストリームには、種類によってさまざまな構成要件があります。 すべてのビットレートとバッファーウィンドウが必要です。
  3. Iwmprofile:: AddStreamを呼び出して、プロファイルにストリームを追加します。

すべてのストリームは、ストリーム構成オブジェクトを使用して定義されます。 ストリーム構成オブジェクトのメインインターフェイスは、 Iwmstreamconfigです。これには、ストリーム番号やビットレートなどのストリームの基本設定を設定するためのメソッドが用意されています。 Iwmstreamconfig は、新しいインターフェイス、 IWMStreamConfig2 、および IWMStreamConfig3によって継承されます。 すべての番号付きインターフェイスのリビジョンと同様に、常に QueryInterface メソッドを使用して最新バージョンを取得する必要があります。

ストリームのほとんどの設定は、 Iwmmediapropsを介してアクセスされます。 これらの設定は、 WM _ メディアの _ 種類 の構造にカプセル化されています。 オーディオとビデオの場合、 WM _ メディアの _ 種類 の構造は、メディアの種類に固有の詳細情報を含む別の構造を指します。 この2番目の構造体は、通常、オーディオの場合は WAVEFORMATEX 、ビデオの場合は Wmvideoinfoheader です。 また、ビデオストリームには、ビデオの個々のフレームの特性を記述する、 Bitmapinfoheader という3番目の構造があります。 Bitmapinfoheader は共通の構造であり、Platform SDK のグラフィックスデバイスインターフェイス (GDI) セクションにあります。

以下のセクションでは、ストリームを構成する方法について説明します。

Section 説明
すべてのストリームに共通する構成 すべての種類のストリームに共通する基本的なストリーム構成について説明します。
コーデックからストリームの構成情報を取得する Windows メディアオーディオとビデオコーデックを使用してストリームを適切に構成するために、コーデックからストリームの構成情報を取得する方法について説明します。
オーディオストリームの構成 オーディオストリームを構成する方法について説明します。
ビデオストリームの構成 ビデオストリームを構成する方法について説明します。
ビデオストリームを構成してパフォーマンスを追求する 効率的なシークが重要なビデオストリームを構成する方法について説明します。
画面キャプチャストリームの構成 画面キャプチャ用のビデオストリームを構成する方法について説明します。
イメージストリームの構成 イメージストリームを構成する方法について説明します。
非圧縮オーディオとビデオストリームの使用 圧縮されていないオーディオまたはビデオストリームを設定する方法について説明します。
任意のストリームの種類の構成 定義済みの任意のストリーム型を使用するようにストリームを構成する方法について説明します。
VBR ストリームの構成 可変ビットレートエンコード (VBR) を使用するようにストリームを構成する方法について説明します。
データ ユニット拡張機能の構成 ファイルの書き込み時にデータユニット拡張をアタッチできるようにストリームを構成する方法について説明します。
ストリーム構成の再利用 既存のプロファイルのストリーム構成オブジェクトを使用して、新しいプロファイルを作成する方法について説明します。

入力、ストリームと出力

プロファイルの操作