Re: [問題] 請教大家一個v4l的問題
※ 引述《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
討論串 (同標題文章)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章