2016-03-22 12 views
0

DirectShowとISampleGrabberインターフェイスを使用してWebカメラからビデオストリームをキャプチャしようとしています。あらゆるグラブフレームのタイムスタンプを取得したいと思います。しかし、SampleCB(double SampleTime, IMediaSample *pSample)メソッドのSampleTimeパラメータは常にゼロです。ISampleGrabberCB :: SampleCBタイムスタンプ

なぜゼロになるのですか?この値は、カメラドライバの実装などによって異なりますか? グラブフレームのタイムスタンプを取得する他の方法はありますか?

答えて

1

プレビューピンからキャプチャしたり、スマートティーフィルタを通してカメラから派生したレッグをプレビューすると、タイムスタンプがゼロになることがあります。タイムスタンプはゼロではなく、フレームは単にタイムスタンプされず、サンプルグラバフィルタは2つのシナリオを区別する手段を提供しません。

GraphStudioNextのアナライザフィルタを使用するか、DumpMediaSamplesを使用してタイムスタンプを簡単に検証できます。

アプリケーションでは、グラフの正確なトポロジ、サンプル・グラバーにアップストリームに接続されているフィルタはどれですか?ほとんどの場合、プレビューの使用を排除するためにコードを更新する必要があります。

+0

はい、プレビューピンを使用しました。ピンをキャプチャするように変更し、タイムスタンプはゼロにはなりません。ご回答有難うございます。 – Dmitry

関連する問題