Microsoft DirectX 8.0

DirectShow システムの概要

マルチメディアの課題

マルチメディアを扱う作業にはいくつかの大きな課題がある。

DirectShow ソリューション

DirectShow は、これらの課題に対処するように設計されている。設計の主な目標は、データ転送、ハードウェアの違い、および同期化の問題をアプリケーションから切り離すことによって、Windows® プラットフォームでのマルチメディア アプリケーション作成作業を容易にすることである。

DirectShow では、ビデオおよびオーディオのストリーミングに必要なスループットを実現するために、DirectDraw® と DirectSound® を使用してシステムのサウンド カードとグラフィック カードにデータを効率よくレンダリングする。同期化は、マルチメディア データをタイム スタンプ付きのメディア サンプルにカプセル化することによって実現される。さまざまなソース、フォーマット、およびハードウェア デバイスを処理するために、DirectShow はモジュール式アーキテクチャを使用している。このアーキテクチャでは、フィルタと呼ばれるオペレーティング システム コンポーネントを組み合わせて、多くの異なるシナリオに対するサポートを提供できる。

DirectShow には、Windows Driver Model (WDM) に基づく最新のマルチメディア キャプチャおよびチューニング デバイスをサポートするフィルタと、従来の Video for Windows (VfW) キャプチャ カードやオーディオ圧縮マネージャ (ACM) およびビデオ圧縮マネージャ (VCM) のインターフェイス用に作成された古い CODEC をサポートするフィルタが含まれている。

次の図は、アプリケーション、DirectShow コンポーネント、DirectShow がサポートするハードウェア コンポーネントおよびソフトウェア コンポーネントの関係を示している。


高レベルのアーキテクチャ


この図が示すように、DirectShow を使用すると、ローカル ファイル、ローカルの CD および DVD ドライブ、ネットワーク上のリモート ファイル、Windows Driver Model (WDM) に基づく最近の TV チューナー カードおよびビデオ キャプチャ カード、従来の Video for Windows® ビデオ キャプチャ カードなど、さまざまなソースのファイルとストリームをアプリケーションで再生できる。DirectShow には一部のファイル フォーマット用の固有のコンプレッサとデコンプレッサがあり、多くのサード パーティ ハードウェアおよびソフトウェア デコーダは、DirecShow と互換性がある。さらに、DirectShow は、ビデオ圧縮マネージャ (VCM) およびオーディオ圧縮マネージャ (ACM) のインターフェイスに基づく従来の VfW CODEC もサポートする。再生では、ハードウェアでサポートされている場合は、DirectDraw ハードウェア アクセラレーションおよび DirectSound 機能が最大限に利用される。