次の方法で共有


ビデオ コントロールの概要

このトピックは Windows XP にのみ適用。

ビデオ コントロールはテレビ放送を受信するためのフィルタ グラフを管理する。ビデオ コントロールは、Broadcast Driver Architecture (BDA) と互換性のあるデジタル TV デバイスをサポートする。また、Windows Driver Model (WDM) ドライバを使っていれば、BDA を使わないアナログ TV デバイスもサポートする。

従来の DirectShow プログラミングでは、アプリケーションはフィルタ グラフ マネージャのインスタンスを作成し、フィルタ グラフ マネージャを使ってフィルタ グラフを作成する。アプリケーションはグラフ内の個別のフィルタにアクセスできるが、フィルタが連携して動作するように制御するのはフィルタ グラフ マネージャである。

TV アプリケーション用のフィルタ グラフは比較的複雑になっている。フィルタ グラフ マネージャを通して TV グラフを直接作成することは可能だが、その方法は複雑でありエラーが発生しやすい。デジタル TV の場合は特にそうである。ビデオ コントロールを使うと、アナログおよびデジタル両方の TV グラフを簡単に作成できる。さらに、フィルタ グラフ マネージャとは異なり、ビデオ コントロールは完全に Automation 互換であるため、Microsoft Visual Basic® アプリケーションだけでなく、スクリプトを通して Web ページでも使用できる。

デバイスとフィーチャー

ビデオ コントロールは個別のフィルタをアプリケーションに公開するのではなく、"デバイス" と呼ばれる高レベルのオブジェクトを公開する。デバイスは単一のフィルタ、複数のフィルタ、またはグラフの外部にあるソフトウェア コンポーネントを表す。DirectShow フィルタとは異なり、デバイスは Automation 互換である。また、デバイスを使うと、アプリケーションに影響を与えることなく基盤になるフィルタ グラフを変化させることができる。

現在、以下のタイプのデバイスがサポートされている。

  • 入力デバイス
  • 出力デバイス
  • フィーチャー

アプリケーションはこれらのオブジェクトと直接やり取りしてさまざまなタスクを実行できる。これらのコンポーネントを 1 つの単位として動作させるための低レベルの詳細はビデオ コントロールが処理する。

入力デバイス オブジェクト

入力デバイスは TV チューナー、DVD 再生、およびファイル再生を含む。以下のタイプの TV チューナー デバイスがサポートされている。

  • Windows Driver Model (WDM) 互換のアナログ TV チューナー
  • Broadcast Driver Architecture (BDA) 互換のデジタル TV チューナー

出力デバイス オブジェクト

デフォルトでは、ビデオ コントロールは 1 つのビデオ レンダラと 1 つのオーディオ レンダラを持つフィルタ グラフを作成する。

アナログ TV フィルタ グラフおよび TV フィルタ グラフの両方で、ビデオ レンダラは常に Video Mixing Renderer (VMR) となる。VMR の動作モードはグラフのタイプによって決まる。アナログ TV グラフの場合、ビデオ コントロールは VMR をミキシング モードに設定する。アプリケーションはこの設定を変更できない。ミキシング モードはアナログ TV 画像上にクローズド キャプションを表示するときに必要である。デジタル グラフについては、ビデオ コントロールは VMR を非ミキシング モードに設定する。ビデオ ミキシングを有効にするには、アプリケーションはクローズド キャプション フィーチャーをアクティブにする必要がある。必要な場合は、キャプション自体を表示することなく、このフィーチャーをアクティブにすることができる。

オーディオの場合、ビデオ コントロールは入力デイバスが生成したオーディオ ストリームに対して適切なデバイスを使う。サウンド カードが DirectSound をサポートしていればビデオ コントロールは DirectSound を使う。

フィーチャー オブジェクト

フィーチャーはテレビジョン信号に対するサービス、またはクライアント側のフィーチャー、あるいはその両方を表す。アプリケーションはどのフィーチャーを有効にするかを決定する。以下のフィーチャーがサポートされている。

  • データ サービス: このフィーチャーがアクティブな場合、ビデオ コントロールはアナログ TV またはデジタル TV のストリームに含まれる IP データを NDIS スタックにルーティングする。アプリケーションは Winsock を介してその IP データにアクセスできる。アナログ放送でクローズド キャプションを表示するときにもこのフィーチャーが必要である。
  • クローズド キャプション: このフィーチャーがアクティブな場合、アプリケーションはクローズド キャプションを使用可能な任意のチャンネルまたはサービスに対して、いつでもクローズド キャプションを有効または無効にすることができる。アナログ TV グラフでは、クローズド キャプションにはクローズド キャプション フィーチャーとデータ サービス フィーチャーの両方が必要である。
  • エンコーダ: ビデオ コントロールでストリーム バッファ エンジンを使うために必要。