DirectShowと戦うスレ Part 2at TECHDirectShowと戦うスレ Part 2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト300:デフォルトの名無しさん 07/03/11 21:44:59 > >CTransformFilter::Receive内でもDeliverしてるからな。その辺り大丈夫だよね? > どうなんでしょう・・・影響があるかは判断しかねます・・・ どう実装してるかわからんけど、もしかしてTransformメソッドの中で2回Deliverしてる? CTransformFilter::Receive良く読んで理解してるよね? 301:デフォルトの名無しさん 07/03/12 08:02:05 俺もフレームレート変換フィルタを作って断念した者ですが、 上流フィルタからの映像が来る来ないに関わらず非同期でフレームレートを作るフィルタが出来なかったんだよな。 今悩んでいる子がここまでやるのなら全力でサポートするよ 302:デフォルトの名無しさん 07/03/12 08:04:43 最近変換フィルタの話題がちょくちょく出ててうれしい。 303:265 07/03/12 08:07:00 >>300 そうです、Transformメソッドの中で2回Deliverしてます。 サンプルの流れがいまいち理解できないです。 そこで今行っている処理の流れを分かる範囲でまとめてみました。 [キャプチャフィルタ]-[変換フィルタ(自作)]-[色空間変換フィルタ]-[VMR9] [色空間変換フィルタ]の入力ピンからの[変換フィルタ]への呼び出し CTransformFilter::Receive (CTransformFilter::InitializeOutputSampleを呼び出す) ↓ CTransformFilter::InitializeOutputSample (新しいサンプルを[キャプチャフィルタ]の出力ピンから取得する) ↓ CTransformFilter::Transform (サンプルの処理) ↓ CBaseOutputPin::Deliver (IMemInputPin::Receiveを呼び出す) ←これを>>286のように2回呼び出しています ↓ IMemInputPin::Receive ([変換フィルタ]の出力サンプルを取得する) ↓ [色空間変換フィルタ]での処理 ↓ [VMR9]が付与されたタイムスタンプに従って画面に表示 疑問点 ・>>289さんの言う、CTransformFilter::Receive内でもDeliverしている、という記述がMSDNで見つけられませんでした。 上記で言えばどの時点で発生するのでしょうか? ・最初のCTransformFilter::Receiveが呼び出されるタイミングが分かりません。 サンプルが変換フィルタで処理されるサイクルはどのようになっているのでしょうか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch