Microsoft DirectX 8.0 |
CCrossbar は、アプリケーションで使用して、アナログ TV チューナー カードなどのデバイスで アナログ ビデオ クロスバー フィルタを制御できるヘルパー クラスである。通常、このようなカードは複数の入力 (コンポジット ビデオ、S ビデオ、TV オーディオ用など) を持つ。クロスバー フィルタは、特定の入力に送られた信号がハードウェアでルーティングされるための、可能なすべての方法を表す。デバイスには、連続して接続された複数のクロスバーを実装するものもあれば、クロスバーを持たないものもある。
CCrossbar は、任意の複雑なクロスバー フィルタのグラフをサポートしている。このようなフィルタをレイヤー化することができ、無効な入力および出力を含めることができる。CCrossbar は可能なすべての入力を列挙し、記録および表示するための単一の入力を選択できる。
開始入力ピンを指定すると (通常、キャプチャ フィルタへのアナログ ビデオ入力)、このクラスはすべての可変入力を検索して再帰的にアップストリームをトレースする。入力がビデオ ピンであり、接続されていないか、IAMCrossbar インターフェイスをサポートしていないフィルタに接続されている場合、可変であると見なされる。 このクラスの使用については、DirectX® 8 SDK の AMCap サンプルアプリケーションでデモが示されている。
CCrossbar CCrossbar オブジェクトを作成する。 GetInputCount 選択できる一意のビデオ入力の数を取得する。 GetInputIndex 現在選択されている入力を取得する。 GetInputName 人が読んで理解できる各入力のタイプを示す文字列を取得する。 GetInputType コンピュータで認識される各入力の物理的なタイプを取得する。 SetInputIndex 特定の入力を選択する。
CCrossbar オブジェクトを作成する。
構文
CCrossbar( IPin *pPin);
パラメータ
- pPin
- 開始入力ピンへのポインタ。
戻り値
戻り値なし。
選択できる一意のビデオ入力の数を取得する。
構文
HRESULT GetInputCount( LONG *pCount);
パラメータ
- pCount
- ビデオ入力の数へのポインタ。
戻り値
S_OK を返す。
現在選択されている入力を取得する。
構文
HRESULT GetInputIndex( LONG *Index);
パラメータ
- Index
- 現在のルーティング インデックスへのポインタ。
戻り値
S_OK を返す。
人が読んで理解できる各入力のタイプを示す文字列を取得する。
構文
HRESULT GetInputName( LONG Index, TCHAR *pName, LONG NameSize);
パラメータ
- Index
- 現在のルーティング インデックス。
- pName
- テキスト バージョンの現在のルーティング入力を受信するバッファへのポインタ。メソッドを呼び出す前は、NULL にすることはできない。NULL にすると、処理は失敗する。たとえば、現在のルーティング入力のタイプが PhysConn_Video_Tuner である場合、この関数はこのパラメータに "Video Tuner" という文字列を返す。詳細については、「注意」を参照すること。
- NameSize
- テキスト バージョンの現在のルーティング入力を受信するバッファのサイズ。pName で示されるバッファは、最後の NULL 文字を含めることができるサイズでなければならない。
戻り値
バッファが十分な大きさで、文字列名をコピーできる場合、このメソッドは S_OK を返す。それ以外の場合は、E_FAIL を返す。
注意
次の表に、現在のルーティング タイプに応じて、pName パラメータが返す値を示す。
物理的なタイプ pName PhysConn_Video_Tuner Video Tuner PhysConn_Video_Composite Video Composite PhysConn_Video_SVideo Video SVideo PhysConn_Video_RGB Video RGB PhysConn_Video_YRYBY Video YRYBY PhysConn_Video_SerialDigital Video SerialDigital PhysConn_Video_ParallelDigital Video ParallelDigital PhysConn_Video_SCSI Video SCSI PhysConn_Video_AUX Video AUX PhysConn_Video_1394 Video 1394 PhysConn_Video_USB Video USB PhysConn_Video_VideoDecoder Video Decoder PhysConn_Video_VideoEncoder Video Encoder PhysConn_Audio_Tuner Audio Tuner PhysConn_Audio_Line Audio Line PhysConn_Audio_Mic Audio Mic PhysConn_Audio_AESDigital Audio AESDigital PhysConn_Audio_SPDIFDigital Audio SPDIFDigital PhysConn_Audio_SCSI Audio SCSI PhysConn_Audio_AUX Audio AUX PhysConn_Audio_1394 Audio 1394 PhysConn_Audio_USB Audio USB PhysConn_Audio_AudioDecoder Audio Decoder
コンピュータで認識される各入力の物理的なタイプを取得する。
構文
HRESULT GetInputType( LONG Index, LONG *PhysicalType);
パラメータ
- Index
- 現在のルーティング インデックス。
- PhysicalType
- ピン (ビデオ) の物理的な名前へのポインタ。 PhysicalConnectorType 列挙データ型のメンバを返す。
戻り値
Index パラメータが範囲外の場合は E_FAIL を返す。それ以外の場合は S_OK を返す。
特定の入力を選択する。
構文
HRESULT SetInputIndex( LONG Index);
パラメータ
- Index
- 設定されるルーティング インデックス。
戻り値
成功した場合は、S_OK を返す。それ以外の場合は、E_FAIL を返す。