mtk平台androidl usb uvc camera 调试记录
来源:互联网 发布:皮蓬生涯数据 编辑:程序博客网 时间:2024/05/22 13:48
USB video class(又称为USB video device class or UVC)就是USB device class视频产品在不需要安装任何的驱动程序下即插即用,包括摄像头、数字摄影机、模拟视频转换器、电视卡及静态视频相机。
Linux内核之中,已经集成了对UVCCamre的支持。
内核代码路径: \kernel-3.10\drivers\media\usb\uvc
若需要打开UVC CAMERA 需要在内核中配置:
MEDIA_SUPPORT = y
MEDIA_USB_SUPPORT = y
USB_VIDEO_CLASS = y
USB_VIDEO_CLASS_INPUT_EVDEV = y
如何查看当前的Camera是否支持UVC
插入摄像头,通过lsusb命令,找到当前UVCCamera的PID和VID
reyn@reyn-All-Series:~/reyn/k86m/k86m_debug/kernel-3.10$ lsusb
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 003 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 003 Device 049: ID 058f:3842 Alcor Micro Corp.
然后执行一下命令lsusb -d 058f:3842 -v | grep "14 Video", 若支持UVC Camera则你会看到如下信息:
reyn@reyn-All-Series:~/reyn/k86m/k86m_debug/kernel-3.10$ lsusb -d 058f:3842 -v | grep "14 Video"
Couldn't open device, some information will be missing
bFunctionClass 14 Video
bInterfaceClass 14 Video
bInterfaceClass 14 Video
bInterfaceClass 14 Video
bInterfaceClass 14 Video
bInterfaceClass 14 Video
bInterfaceClass 14 Video
在UVC Camrera遇到问题时,可以通过以下命令,打开trace
sudo echo 0xffff > /sys/module/uvcvideo/parameters/trace 打开
sudo echo 0 > /sys/module/uvcvideo/parameters/trace 关闭
dmesg | grep uvc -a -a 命令是将起作为一个文本文件设备对待
若当前Camera不支持UVC ,可以通过以下命令,或许当前Camrea的详细配置描述符:
lsusb -d 058f:3842 -v
下面介绍一下USB协议关于摄像头的相关知识!
V4L2:
Video4Linux或V4L是一个视频截取及设备输出API,以及Linux的驱动程序框架,支持很多USB摄像头、电视调谐卡以及其他设备。
简单的讲V4L2就是用来管理UVC设备的并且能够提供视频相关的一些API。那么这些API怎么使用或者能被谁使用呢。在Linux系统上有很多的开源软件能够支持V4L2。常见的又FFmpeg、opencv、Skype、Mplayer等等。
VideoClass设备描述位于USB协议的Interface级,每个设备的Interface分为两类VideoControlInterface(仅仅只用一个)和VideoStreamingInterface(可以具有多个),而与设备的一个相关的所有的USB Interface被称作为一个VideoInterface Collection使用IAD(Interface Association Deor)描述符来描述。
目前内核支持的UVC camera的类型有 :
YUV 4:2:2 (YUYV)
YUV 4:2:0 (NV12)
MJPEG
YVU 4:2:0 (YV12)
YUV 4:2:0 (I420)
YUV 4:2:0 (M420)
YUV 4:2:2 (UYVY)
Greyscale 8-bit (Y800)
Greyscale 8-bit (Y8 )
Greyscale 10-bit (Y10 )
Greyscale 16-bit (Y16 )
RGB Bayer
RGB565
H.264
插入摄像头,如果在设备节点下出现/dev/video0; 则证明你的uvc camera在内核的驱动已经加载了,然后就可以用测试工具开始测试你的uvc摄像头了。
常用的linux测试工具为: luvcview
未完 待续...
- mtk平台androidl usb uvc camera 调试记录
- uvc camera MTK平台调试总结
- uvc camera MTK平台调试总结
- MTK MT6735平台调试Camera驱动记录
- MTK camera 效果调试记录
- USB UVC Camera DEBUG
- USB Camera UVC
- MTK USB CAMERA (中芯微Z0301调试)
- USB Camera摄像头 UVC 驱动
- linux uvc usb camera driver
- Android USB Camera(1) : 调试记录
- Android USB Camera(1) : 调试记录
- Android USB Camera(1) : 调试记录
- [RK3288][Android6.0] 调试笔记 --- 同时支持两颗USB UVC Camera
- [RK3288][Android6.0] 调试笔记 --- 如何区分两颗相同的USB UVC Camera
- usb gadget g_webcam uvc 调试
- Android智能机MTK平台调试记录
- Android智能机MTK平台调试记录
- solaris磁带机 tar 备份
- Linux下导入、导出Mysql数据库
- 流行学习常用算法
- Eclipse标准格式化代码快捷键Ctrl+Shift+F失效
- 中国融资租赁行业存在的问题
- mtk平台androidl usb uvc camera 调试记录
- 显示ActionBar的Menu
- linux光驱挂载和vsftpd服务安装使用
- VS+QT实现语言自动切换
- 高仿QQ消息,可以下拉刷新带小红点
- JAVA对list集合进行排序Collections.sort()
- 建立maven项目
- codeforces 604B (贪心)
- 47,结构体数组