次の方法で共有


CSourceStream クラス

CSourceStream クラスの階層

CSourceStream クラスは、CSource フィルタ クラスの出力ピンを提供する。

このクラスの使い方の詳細については、「CSource」を参照すること。このクラスは、ピンからのストリーミング データにワーカー スレッドを提供する CAMThread クラスを継承する。CSourceStream クラスは、次のヘルパー メソッドを実装して、スレッドに要求を送る。

スレッドへの最初の要求は、Init でなくてはならない。Exit 要求によって、スレッドが終了する。実際には、これらのいずれのメソッドも直接呼び出す必要はない。これは、ピンの CSourceStream::Active メソッドと CSourceStream::Inactive メソッドが、必要に応じてメソッドを呼び出すためである。

このクラスは、次に示すいくつかの "ハンドラ" メソッドも提供する。

これらのメソッドは、基底クラスでは何も処理を行わないが、派生クラスではそれらをオーバーライドできる。

要件

ヘッダー : Source.h 内で宣言し、Streams.h をインクルードする。

ライブラリ : Strmbase.lib (リテール ビルド) または Strmbasd.lib (デバッグ ビルド) を使う。

プロテクト メンバ変数  
m_pFilter このピンが含まれているフィルタへのポインタ。
プロテクト メソッド  
OnThreadCreate ストリーミング スレッドが初期化されたときに呼び出される。仮想。
OnThreadDestroy ストリーミング スレッドが間もなく終了するときに呼び出される。仮想。
OnThreadStartPlay CSourceStream::DoBufferProcessingLoop メソッドの処理が開始されたときに呼び出される。仮想。
Active フィルタが現在アクティブであることをピンに通知する。
Inactive フィルタがアクティブではなくなったことをピンに通知する。
GetRequest 次のスレッド要求を待つ。
CheckRequest ブロックせずに、スレッド要求があるかどうかを調べる。
ThreadProc スレッド プロシージャ。仮想。
DoBufferProcessingLoop メディア データを生成し、ダウンストリームの入力ピンに提供する。仮想。
CheckMediaType ピンが特定のメディア タイプを受け入れるかどうかを調べる。仮想。
GetMediaType 優先メディア タイプを取得する。仮想。
パブリック メソッド  
CSourceStream コンストラクタ メソッド。
~CSourceStream デストラクタ メソッド。仮想。
Init ストリーミング スレッドを初期化する。
Exit ストリーミング スレッドに終了するように通知する。
Run ストリーミング スレッドに実行するように通知する。
Pause ストリーミング スレッドにアクティブになるように通知する。
Stop ストリーミング スレッドに停止するように通知する。
純粋仮想メソッド  
FillBuffer メディア サンプルにデータを埋める。
IPin メソッド  
QueryId ピンの識別子を取得する。