views:

29

answers:

0

Hello everyone,

We have an application that uses DShow filters to play video off of IP cameras. I'm currently trying to fix the following bug:

Normally, the app will build a graph, connecting the video renderer filter and the source filter on request for live video feed. Now, if while the player is running the PC goes into windows lock mode (Win Key + L) and then unlocked, video is no longer being played (which is fine). However, subsequent attempts to play video again will fail with a VFW_E_NOT_CONNECTED error on a call to CBasePin::ConnectedTo() which always works fine otherwise.

code snippet: HRESULT res = inputPin->ConnectedTo(&outputPin);

Any ideas what windows lock does to break DShow, and what I need to do to correct it? I already have code in place to catch both the going into and going out of Lock, and programatically stop the video playback when going into lock, but it doesn't help - I suspect it's too late.