★★★高分求援:如何用TNMUDP控件截取USB接口摄像头音像并传输★★★(300分)

  • 主题发起人 主题发起人 zhbj
  • 开始时间 开始时间
Z

zhbj

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用TNMUDP控件截取USB接口的摄像头音像信息,并传输
到局域网中的某台计算机,并在对方显示出音像(系统使用了VideoCAP控件)。
在大富翁检索了不少,但总感觉无法解决问题,请大侠予以指教 。
本人感激万分 。
本人信箱 sdslymk@163.com
 
本地可以采用Vedio for Windows,它是WIN32 SDK 中多媒体编程SDK 的视频开发工具

远程可以使用流
 
>>>>youth[dfw],

有实例吗? 再次感谢 !
 
你图象文件有没有捕捉 下来???
 
已经捕捉下来了
 
捕捉下来之后,再通过UDP发送到客户端 ,客户端 收到数据后再显示。
应该没什么问题啊
 
function FrameCallBack(hWnd:HWND; lpVHdr:LongInt):LongInt; stdcall;
var
DataPoint: ^byte; //结构指针指向形式
DibLen: Cardinal;
begin
//转换从回调函数中得到的指针
VideoStr:=PVIDEOHDR(lpVHdr); //得到视频数据的地址指针
//得到返回的数据大小
DibLen:=VideoStr^.dwBufferLength;
GetMem(DataPoint, DibLen);
//将帧数据COPY到一个内存中,注意DATAPOINT要先分配空间
CopyMemory(DataPoint, VideoStr^.lpData, Diblen);
//一些其他处理
FreeMem(DataPoint, DibLen);
result:= S_OK;
end;
这是调用Api和Dll来完成的

videocap有个onvideostream事件。videodisp有个onstream事件。
 
to 楼主
借宝地问一下 videocap 在哪里有下载的, 我是说不用注册付款的那一种
 
感谢小虫子:
能否再提示以一下如何用Tnmudp在网络发布和接收、显示



to chshanghai,
videocap好象是窑洞内有,请检查,不行请来信
 
发送数据:
begin
var
mBuf:TMemoryStream;
begin
mBuf := TMemoryStream.Create();
mBuf.Clear;
mBuf.SetSize(iBufferBlock); //设置缓冲区大小
CopyMemory(Pointer(Longint(mBuf.Memory)),iBuf[iBufindex],iBufferBlock);//拷贝数据,目的缓冲->源缓冲,iBufferBlock为大小
udp_Send.RemoteHost := sBroadIP;//远程主机IP
udp_Send.SendStream(mBuf); //发送数据。
mBuf.Free;
end;
end;
 
yeath大侠,请指点一下声音的采集和压缩传送问题 。
 
把我以前写的贴上来,下面是链接:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1453285
 
我借光问一下,摄像头传输的是动态的视频,是否只需要保持12/秒的图像传输就可以形成
动态的视频了。
 
多人接受答案了。
 
后退
顶部