次の図は、トランスコード API と Media Foundation エンコード パイプラインの残りの部分の関係を示しています。
エンコード パイプラインには、次のデータ処理オブジェクトが含まれています。
- メディア情報源
- デコーダ
- ビデオ リサイズツールまたはオーディオ リサンプリング
- エンコーダー
- メディア シンク
ビデオ サイズ変更は、出力ビデオのサイズがソースと異なる場合にのみ必要です。 オーディオ リサンプリングは、エンコード前にオーディオを再サンプリングする必要がある場合にのみ必要です。 デコーダーとエンコーダーのペアはコード変換には必要ですが、再多重化には必要ありません。
エンコード トポロジ は、パイプラインオブジェクト (ソース、デコーダー、リサイザー、リサンプラー、エンコーダー、メディアシンク) とそれらを含めた接続ポイントの集合です。 トポロジの詳細については、「トポロジの」を参照してください。
さまざまなコンポーネントが、さまざまなパイプライン オブジェクトを作成する役割を担います。
- アプリケーションは通常、ソース リゾルバー を使用してメディア ソースを作成します。
- メディア セッション は、デコーダー、ビデオ リサイズ、およびオーディオ リサンプリングを読み込んで構成します。 内部的には、トポロジ ローダーを使用してこれを行います (IMFTopoLoader参照)。
- トランスコード API は、エンコーダーとメディア シンクを読み込んで構成します。
高度なアプリケーションでは、トランスコード API を使用するのではなく、エンコーダーとメディア シンクを直接構成できます。
関連トピック