【C#】DirectShow.net + LogicoolのカメラでサンプルDxSnapがうまく動かない!
関連記事
- 不具合解析オワタ デバイスドライバの不具合じゃねぇ~か(汗 【2015年03月13日(金)】
- DirectShowシステムを休出にて構築中 【2009年04月18日(土)】
- 出来た! 【2007年11月29日(木)】
- IBaseFilter 【2007年11月28日(水)】
- ぴ~~~~んち! 【2007年11月28日(水)】
のでありました
いやぁ~原因調査にえらいかかった
いや,原因は
Logicoolカメラデバイスに,スティル機能があるみたいなんじゃけど,そのスティルピン,どうも,調子が悪いっぽい
ってことで,そのスティル出力ピンと,サンプルグラバー(SampleGrabber)の入力ピンを直接接続しようとすると不具合が出る模様
コードの流れを追っかけて,いまいち,わけわからん!
結局,grapheditを起動して,全体の流れがやっと解って
こんな感じで,繋がないといけない模様

Smart Teeにて,出力を2つに分けたら,問題なし(まぁ,普通はこの流れじゃなぁ)
ってことで,該当のソースを修正してみた
修正は,Capture.cs
/// <summary> build the capture graph for grabber. </summary>
private void SetupGraph(DsDevice dev, int iWidth, int iHeight, short iBPP, Control hControl)
{
int hr;
ISampleGrabber sampGrabber = null;
IBaseFilter capFilter = null;
IPin pCaptureOut = null;
IPin pSampleIn = null;
IPin pRenderIn = null;
// Get the graphbuilder object
m_FilterGraph = new FilterGraph() as IFilterGraph2;
try
{
#if DEBUG
m_rot = new DsROTEntry(m_FilterGraph);
#endif
// add the video input device
hr = m_FilterGraph.AddSourceFilterForMoniker(dev.Mon, null, dev.Name, out capFilter);
DsError.ThrowExceptionForHR( hr );
// Find the still pin
//m_pinStill = DsFindPin.ByCategory(capFilter, PinCategory.Still, 0); //コメントにしてね
// Didn't find one. Is there a preview pin?
//if (m_pinStill == null) //コメントにしてね
//{ //コメントにしてね
// m_pinStill = DsFindPin.ByCategory(capFilter, PinCategory.Preview, 0); //コメントにしてね
//} //コメントにしてね
// Still haven't found one. Need to put a splitter in so we have
// one stream to capture the bitmap from, and one to display. Ok, we
// don't *have* to do it that way, but we are going to anyway.
if (m_pinStill == null) //この条件が成り立つようになる
{
IPin pRaw = null;
IPin pSmart = null;
// There is no still pin
m_VidControl = null;
// Add a splitter
IBaseFilter iSmartTee = (IBaseFilter)new SmartTee();
コメントにしてね辺りをコメントにすると,直下のif文が成り立つようになって,SmartTeeでの,映像分岐が行われるようになりまする参考にドゾー

コメント
今年の漢字は、初登場「熊」に決定
今週末は天気が悪そうじゃ.お出かけには向かないかものぉ
今朝も一桁℃で寒いの.エアコンがフル稼働中
【#特別重大報道】存立危機事態オワタ:オヤジが亡くなったので諸々の行事を片してきたのぢゃ
【相続祭り】ドコモ光の解約を失敗した!ドコモは契約が無いって言うてるが...
【#大雪】大雪に対する国土交通省発表(25/12/2)
【#特別重大報道】存立危機事態キター!有事発生ぢゃ!!なので,ぎんゆぅ~さんはしばらくお休みしまする