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