作者neutronstars (中子星的呼唤)
看板LinuxDev
标题Re: [问题] 请教大家一个v4l的问题
时间Fri Oct 12 01:44:11 2007
※ 引述《hpeter (hpeter)》之铭言:
: ※ 引述《fire2 (我要星海2)》之铭言:
: : vid_mmap.frame = iFrame;
: : if (ioctl(m_devopen, VIDIOCSYNC, &vid_mmap.frame) == -1)
: : {
: : qDebug("sync error\n" );
: : }
: : 在这边想请问为什麽数值会小於1
: : 恳请板上大家帮忙我一下,万分感谢>"<
: 以下是猜的XD
: 不过我看一般 int ioctl(fd, state, data) 回传值小於 1 有可能是失败
: 你的用法是对 m_devopen 这个档案描述值(fd),利用 ioctl 来比对状态,
: 比对的结果 vid_mmap.frame 不是 Frame 的 CSYNC 。
参考网址:
http://www.hhcn.com/cgi-bin/topic.cgi?forum=1&topic=235&show=0
调用VIDIOCSYNC等待一帧截取结束
‧if(ioctl(vd->fd, VIDIOCSYNC, &frame) < 0)
‧{
‧perror("v4l_sync:VIDIOCSYNC");
‧return -1;
‧}
若成功,表明一帧截取已完成。可以开始做下一次 VIDIOCMCAPTURE
‧frame是当前截取的帧的序号。
ps.希望对你有帮助
也许你要注意一下前面的ioctl是否有正确完成,或配置的记忆体是否正确
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.70.142.45