最近在研究Android怎么样通过otg外接摄像头实现点击手机相机直接调用外部摄像头,请问如何实现?需要掌握哪些方面的知识和技能?
Android本身没有提供USB摄像头的接口,但底层Linux是可以识别UVC摄像头的,不过需要在内核编译的时候打开这这个支持,你可以使用一个USB摄像头插上然后用ADB调试查看/dev目录下有没有video0或video1随着USB摄像头的插拔而出现消失,如果有的话那么你需要写一个JNI的接口给上层调用,如果没有的话那么就比较麻烦了,你得从驱动层到JNI然后写到上层,其中驱动层中的是V4L2框架你得懂,底层驱动会写,还要会用C/C++写JNI接口,都是比较有难度的
我目前也在做类似的题目,我的小米机器在插拔usb摄像头时,会出现/dev/video4的设备,权限是rw--rw---之类,我在JNI层用open打开它会出错报权限问题。如果我用JAVA在UsbManager去查找这个USB设备,是能找到它,通过给USB授权后,能open,但是bulkTranslate会返回-1
我也碰到了 同样的问题,USB授权之后,你JNI能open?