HI3531(20D)支持UVC摄像头1
2 E币
成为会员,免费下载资料
文件大小:473.6 KB
上传者:goodman
时间:2016-02-24 22:35:41
下载量:154
本帖最后由 goodman 于 2016-2-24 22:38 编辑
最近一直在搞IMX6的东西,其中也涉及视频的采集和编码,只是方式不一样但是感觉IMX6的灵活性明显比海思大。。。
视频采集使用的是V4L2,刚好手里有个USB的UVC摄像头就想着是不是可以在海思的平台上弄起来。。
本来是用Hi3520D来做的,毕竟我是3520D板块的版主嘛:lol 。。。但是由于20D的板子USB有点问题,所以就用31来测试了,东西的原理都一样!
摄像头的数据格式是YUYV的分辨率的,大小是VGA格式640x480。
下面是步骤:
1.开启内核UVC支持
[code]<*> Multimedia support --->
Video capture adapters --->
V4L USB devices --->
<*> USB Video Class (UVC)
UVC input events device support [/code]
2.插上UVC摄像头
弹出如下消息:
usb 1-1: new high speed USB device number 2 using hiusb-ehci
uvcvideo: Found UVC 1.00 device USB2.0 Camera (1e4e:0109)
uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
input: USB2.0 Camera as /devices/platform/hiusb-ehci.0/usb1/1-1/1-1:1.0/input/input0
同时/dev/下生成了video0设备节点
[attach]3383[/attach]
3.数据采集
数据的采集使用的是标准的V4L2,V4L2的教程网上有很多自己搜索下子就有了。
注意自己的摄像头的数据格式是不是YUYV的,支持的分辨率是多大,详细见代码。
代码流程如下:
[code] open_device();
init_device();
start_capturing();
if (no_cap == 0)
mainloop();
stop_capturing();
uninit_device();
close_device();[/code]
使用交叉编译器编译后申城uvc 执行./uvc -d /dev/video0 -o test.yuv既可以采集100帧
4.测试播放
这里提供一个海康的YUV播放工具,见附件,还是很好用的,测试图像如下:
[attach]3384[/attach]
[attach]3385[/attach]
下期预告:
将摄像头接入3531实现预览功能
[attach]3386[/attach]
最近一直在搞IMX6的东西,其中也涉及视频的采集和编码,只是方式不一样但是感觉IMX6的灵活性明显比海思大。。。
视频采集使用的是V4L2,刚好手里有个USB的UVC摄像头就想着是不是可以在海思的平台上弄起来。。
本来是用Hi3520D来做的,毕竟我是3520D板块的版主嘛:lol 。。。但是由于20D的板子USB有点问题,所以就用31来测试了,东西的原理都一样!
摄像头的数据格式是YUYV的分辨率的,大小是VGA格式640x480。
下面是步骤:
1.开启内核UVC支持
[code]<*> Multimedia support --->
<*> USB Video Class (UVC)
2.插上UVC摄像头
弹出如下消息:
usb 1-1: new high speed USB device number 2 using hiusb-ehci
uvcvideo: Found UVC 1.00 device USB2.0 Camera (1e4e:0109)
uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
input: USB2.0 Camera as /devices/platform/hiusb-ehci.0/usb1/1-1/1-1:1.0/input/input0
同时/dev/下生成了video0设备节点
[attach]3383[/attach]
3.数据采集
数据的采集使用的是标准的V4L2,V4L2的教程网上有很多自己搜索下子就有了。
注意自己的摄像头的数据格式是不是YUYV的,支持的分辨率是多大,详细见代码。
代码流程如下:
[code] open_device();
init_device();
start_capturing();
if (no_cap == 0)
mainloop();
stop_capturing();
uninit_device();
close_device();[/code]
使用交叉编译器编译后申城uvc 执行./uvc -d /dev/video0 -o test.yuv既可以采集100帧
4.测试播放
这里提供一个海康的YUV播放工具,见附件,还是很好用的,测试图像如下:
[attach]3384[/attach]
[attach]3385[/attach]
下期预告:
将摄像头接入3531实现预览功能
[attach]3386[/attach]
展开》
折叠》