我现在用V4L2在PC上可以正常驱动USB摄像头,相同的代码在BBB里运行老是卡在了取视频数据那里,ioctl (g_sVideo.fd,VIDIOC_DQBUF, &buf); //取出一帧 。
其它摄像头信息显示都正常,不知什么原因。
另外BBB(A8)这块板子如果同时采集两路1080p的数据并通过网络发送出去会不会很够呛?
Denny%20Yang99373:
相同的硬件和代码可以现在PC上面试试
性能要看码流多大,是否需要额外的视频处理等
user4619179:
回复 Denny%20Yang99373:
程序在安装了linux的PC上已经可以用了,这是打开操作:fd=open(dev,O_RDWR|O_NONBLOCK,0);起初没有NONBLOCK这个参数所以移植阻塞着,现在加上这个参数后不会阻塞了,但是采集出来的数据是错误的,显示出来花屏。
Jian Zhou:
回复 user4619179:
A8上哪个Linux版本?摄像头preview的时候,是多大分辨率的。
user4619179:
回复 Jian Zhou:
debian的,分辨率是640*480。
Denny%20Yang99373:
回复 user4619179:
到驱动里面加些打印看看
枚举和STREAM_ON都有没有正确返回
user4619179:
回复 Denny%20Yang99373:
BBB直接用ffmpeg命令行的方式驱动摄像头也是直接卡死,同样的命令在电脑的ubuntu环境下没有问题。
ffmpeg -f video4linux2 -qscale 10 -r 25 -s 640×480 -i /dev/video0 -f mpeg udp://192.168.3.103:8000