CBaseControlVideo クラス

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayerIMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]

cbasecontrolvideo クラス階層

CBaseControlVideo クラスは、IBasicVideo インターフェイスを実装し、汎用ビデオ ウィンドウのビデオ プロパティを制御します。 一般に、 CBaseControlVideo オブジェクトは、ディスプレイ上のウィンドウにビデオを描画するビデオ レンダラーです。

多くの CBaseControlVideo メンバー関数では、ビデオ レンダラーをフィルター グラフに接続するだけで済みます。 接続されていない場合、メンバー関数は VFW_E_NOT_CONNECTEDを返します。 ビデオ レンダラーに設定されたプロパティは、連続する接続と切断の間で保持されます。 すべてのアプリケーションで、プレゼンテーションを開始する前にレンダラーのプロパティをリセットする必要があります。

ビデオを操作する場合、アプリケーションは使用するビデオの一部を選択できます。 この部分は、 CBaseControlVideo オブジェクトが制御するソース四角形です。 CBaseControlVideo を使用すると、アプリケーションでソース四角形を設定および取得できます。 CBaseControlVideo で使用されるすべての四角形では、右と下の値ではなく、幅と高さの値が使用されます。 ソース四角形が設定されていない場合、ソース四角形のプロパティは、完全なネイティブ ビデオ サイズを返します。

プロテクト データ メンバー 説明
m_pFilter 所有するメディア フィルターへのポインター。
m_pInterfaceLock 外部で定義されたクリティカル セクション。
m_pPin 接続のメディアの種類を制御します。
メンバー関数 説明
CBaseControlVideo CBaseControlVideo オブジェクトを構築します。
CopyImage ビデオ イメージのメモリ コピーを作成します。
GetImageSize ビデオ 画像のサイズ情報を取得します。
SetControlVideoPin このオブジェクトの同期に使用するピンを設定します。
オーバーライド可能なメンバー関数 説明
CheckSourceRect ソース四角形が有効かどうかを判断します。
CheckTargetRect ターゲットの四角形が有効かどうかを判断します。
GetSourceRect 現在のソース ビデオの四角形 (純粋仮想) を取得します。
GetStaticImage メモリ バッファー (純粋仮想) 内の現在のイメージを返します。
GetTargetRect 現在のターゲット ビデオの四角形 (純粋仮想) を取得します。
GetVideoFormat ビデオ形式を含む VIDEOINFOHEADER 構造体を取得します。
IsDefaultSourceRect レンダラーが既定のソース四角形 (純粋仮想) を使用しているかどうかを判断します。
IsDefaultTargetRect レンダラーが既定のターゲット四角形 (純粋仮想) を使用しているかどうかを判断します。
OnUpdateRectangles ソースまたはターゲットの四角形が変更されたときに呼び出されます。
OnVideoSizeChange EC_VIDEO_SIZE_CHANGEDをアプリケーションに渡します。
SetDefaultSourceRect 既定のソース ビデオの四角形 (純粋仮想) を設定します。
SetDefaultTargetRect 既定のターゲット ビデオの四角形 (純粋仮想) を設定します。
SetSourceRect 現在のソース ビデオの四角形 (純粋仮想) を設定します。
SetTargetRect 現在のターゲット四角形 (純粋仮想) を設定します。
IBasicVideo メソッド 説明
get_AvgTimePerFrame フレームあたりのおおよその平均時間を取得します。
get_BitErrorRate おおよそのビット エラー 率を取得します。
get_BitRate ビデオのおおよそのビット レートを取得します。
GetCurrentImage 現在のイメージのメモリ レンダリングを取得します。
get_DestinationHeight 現在の移動先の四角形の高さを取得します。
get_DestinationLeft 現在の移動先の四角形の左座標を取得します。
GetDestinationPosition 現在の移動先の位置を取得します。
get_DestinationTop 現在の移動先の四角形の上座標を取得します。
get_DestinationWidth 現在のコピー先の四角形の幅を取得します。
get_SourceHeight 現在のソース四角形の高さを取得します。
get_SourceLeft 現在のソース四角形の左座標を取得します。
GetSourcePosition 現在のソース位置を取得します。
get_SourceTop 現在のソース四角形の上座標を取得します。
get_SourceWidth 現在のソース四角形の幅を取得します。
get_VideoHeight ネイティブ ビデオの高さを取得します。
GetVideoPaletteEntries ビデオのパレット エントリの範囲を取得します。
GetVideoSize ネイティブ ビデオの幅と高さを取得します。
get_VideoWidth ネイティブ ビデオ幅を取得します。
IsUsingDefaultDestination レンダラーが既定の変換先ウィンドウを使用しているかどうかを判断します。
IsUsingDefaultSource レンダラーが既定のソース ウィンドウを使用しているかどうかを判断します。
put_DestinationHeight 移動先の四角形の高さを設定します。
put_DestinationLeft 変換先の四角形の左座標を設定します。
put_DestinationTop 変換先の四角形の上座標を設定します。
put_DestinationWidth コピー先の四角形の幅を設定します。
put_SourceHeight ソース四角形の高さを設定します。
put_SourceLeft ソース四角形の左座標を設定します。
put_SourceTop ソース四角形の上座標を設定します。
put_SourceWidth ソース四角形の幅を設定します。
SetDefaultDestinationPosition 既定の移動先の位置をもう一度設定します。
SetDefaultSourcePosition 既定のソース位置をもう一度設定します。
SetDestinationPosition 移動先の四角形の位置を設定します。
SetSourcePosition ソースの四角形の位置を設定します。

 

関連項目

DirectShow 基本クラス