对avicap32.dll调用 想写一个基于网络摄像头的程序 可以两个人视屏聊天的
我想写一个关于视频聊天的程序,在网上搜了很多最后觉得使用这个
http://blog.csdn.net/zzmdegm/article/details/1915364 的例二(例一也用了,但是觉得例二合适点)
我想实现的是在本地开启摄像头显示自己,然后把这个视屏流发送给客户端,让视频也在客户端显示自己。
于是问题就来了:
网络上的方法是:在客户端不断的截图,然后发送到客户端,客户端监听到后不断的显示
但是我用了下面的类后,然后跟踪,发现在FrameCallBacker(***)中会得到视频信息,会被保存,所以我想只要把这个视频信息发送给客户端,客户端就可以显示了这是类中的一个函数,
private void FrameCallBacker(IntPtr lwnd, IntPtr lpVHdr) { showVideo.VIDEOHDR videoHeader = new showVideo.VIDEOHDR(); byte[] VideoData; videoHeader = (showVideo.VIDEOHDR)showVideo.GetStructure(lpVHdr, videoHeader); //难道在这里?下面的VideoData会得到视屏信息 我想只要发送这个就可以了 VideoData = new byte[videoHeader.dwBytesUsed];//在这里赋值 showVideo.Copy(videoHeader.lpData, VideoData); //在这里显示 if (this.RecievedFrame != null) this.RecievedFrame(VideoData); }