在使用UVCCamera时,打开外部摄像头时崩溃并抛出异常:could not open camera:err=-1
2019-04-28 17:56:26.992 17305-17330/? E/UVCCamera: [17330*UVCCamera.cpp:172:connect]:could not open camera:err=-1
--------- beginning of crash
2019-04-28 17:56:26.993 17305-17330/? E/AndroidRuntime: FATAL EXCEPTION: BaseActivity
Process: com.serenegiant.usbcameratest, PID: 17305
java.lang.UnsupportedOperationException: open failed:result=-1
at com.serenegiant.usb.UVCCamera.open(UVCCamera.java:204)
at com.serenegiant.usbcameratest.MainActivity$2$1.run(MainActivity.java:142)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:159)
at android.os.HandlerThread.run(HandlerThread.java:61)
解决方案
方案1. 修改NDK版本
将项目根目录的local.properties文件中的ndk.dir 路径改为14c, ndk下载路径为: https://developer.android.com/ndk/downloads/older_releases.html
方案2. 将编译器改为GCC
取消libuvccamera / src / main / jni / Application.mk 文件中的注解NDK_TOOLCHAIN_VERSION := 4.9
网友评论