Why my AVStream video driver can't be used with the Skype 5.5.4.78
-
Tuesday, April 10, 2012 5:01 PM
The WDK AVStream sample avshws can't be used with the new skype version 5.5.4.78.
The avshws works well with AMCap, why skype can't use it? Seems all avstream video driver can't be used with skype.
All Replies
-
Tuesday, April 10, 2012 5:09 PM
The WDK AVStream sample avshws can't be used with the new skype version 5.5.4.78.
The avshws works well with AMCap, why skype can't use it? Seems all avstream video driver can't be used with skype.
I think the sample avshws is not complete, for example it doesn't support capture(not preview) with Amcap. To enable capture feature, below modification should be added:
if (m_Clock) {
LONGLONG ClockTime = 0;
ClockTime = m_Clock->GetCorrelatedTime(&ClockTime);
pHeader->PresentationTime.Time = ClockTime;
...if (pHeader->Size >= sizeof(KSSTREAM_HEADER) + sizeof(KS_FRAME_INFO)) {
PKS_FRAME_INFO FrameInfo = reinterpret_cast<PKS_FRAME_INFO>(pHeader + 1);The sample doesn't offer PKS_FRAME_INFO codes.
Are there some other bugs lead the skype can't use it?
-
Thursday, April 12, 2012 5:51 AM
yanqinglu wrote:>>The avshws works well with AMCap, why skype can't use it? Seems all>avstream video driver can't be used with skype.Wrong. Skype would be useless if that were true. All video cameras todayuse AVStream drivers. USBVideo.sys is an AVStream driver.--Tim Roberts, timr@probo.comProvidenza & Boekelheide, Inc.
Tim Roberts, VC++ MVP Providenza & Boekelheide, Inc.- Marked As Answer by Doron Holan [MSFT]Microsoft Community Contributor, Owner Thursday, April 12, 2012 4:48 PM
-
Thursday, April 12, 2012 5:54 AM
yanqinglu wrote:>>I think the sample avshws is not complete, for example it doesn't support>capture(not preview) with Amcap.Avssamp does.>To enable capture feature, below modification should be added:>...>The sample doesn't offer PKS_FRAME_INFO codes.Again, the avssamp sample does.--Tim Roberts, timr@probo.comProvidenza & Boekelheide, Inc.
Tim Roberts, VC++ MVP Providenza & Boekelheide, Inc.- Marked As Answer by Doron Holan [MSFT]Microsoft Community Contributor, Owner Thursday, April 12, 2012 4:48 PM
-
Thursday, April 12, 2012 6:18 AM
Thanks for your reply.
I wrote my own driver following the avshws sample. In fact the avshws really doesn't work with new skype version 5.5.4.78 under Windows 7. Maybe some flags wasn't set to lead this issue. The skype stays on below figure:
-
Thursday, April 12, 2012 6:27 AM
Have you tried the capture file function in AMCap with avshws or avssamp? There are peopele have asked this question and resovled the issue:
-
Thursday, April 12, 2012 6:57 AM
I revert the some changes in avshws and rebuild it, now it works well with the skype. Sorry for that, maybe some changes lead this issue.
-
Thursday, April 12, 2012 9:32 AM
Does it mean that every skype, messenger,... application client should "get" the "camera device"? right?
This raises another question... one could create a AVStream from a camera and use it and then apper occuped by another application client?
I mean... my guest is that this skype application can not get a AVStream because it is being used...
Thanks.
-
Thursday, April 12, 2012 12:42 PM
Yes I know the WebCamera should be run as single instance. My own driver was modified with the sample avshws. Below figure is my driver works well with MS msn messager:
My driver works well with msn message, amcap and others except for Skype. Below figure is running with skype:
I marked the holding on icon with red circle.
I create a thread in the kernel driver to transfer encoded image data between memory and usb device. When a frame is received, call 'KsPinAttemptProcessing' to resume the driver's main thread, and process image.
-
Sunday, April 15, 2012 5:35 AMCarlesls wrote:>>Does it mean that every skype, messenger,... application client should>"get" the "camera device"? right?As long as it is properly registered, yes. They all useCLSID_SystemDeviceEnum to find cameras.>This raises another question... one could create a AVStream from a camera>and use it and then apper occuped by another application client?A correctly designed AVStream driver allows several apps to build graphscontaining its filter, but only the first graph can start.--Tim Roberts, timr@probo.comProvidenza & Boekelheide, Inc.
Tim Roberts, VC++ MVP Providenza & Boekelheide, Inc.


