我在Android中使用自动对焦完成了一个小型相机应用。在我的nexus上,一切都运行正常,但是当我从Camera对象调用takePicture()时它会崩溃。这是堆栈跟踪:
10-02 11:53:58.476: DEBUG/QualcommCameraHardware(19448): takePicture(479)
10-02 11:53:58.476: DEBUG/QualcommCameraHardware(19448): val_ril_status = 0,val_wimax_status = 0,val_hotspot_status = 0,val_low_temp_limit = 5.000000,val_batt_temp = 34.000000,val_low_temp_limit = 15,val_batt_cap = 63
10-02 11:53:58.476: DEBUG/QualcommCameraHardware(19448): FLASHLIGHT is ENABLED
10-02 11:53:58.476: ERROR/mm-camera-config-proc(19448): liboemcamera: config_proc_ctrl_command: SEVERE ERROR: attempt to override pending command 13
10-02 11:53:58.586: INFO/DEBUG(19299): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
10-02 11:53:58.586: INFO/DEBUG(19299): Build fingerprint: 'htc_wwe/htc_bravo/bravo/bravo:2.2/FRF91/226611:user/release-keys'
10-02 11:53:58.586: INFO/DEBUG(19299): pid: 19448, tid: 19628 >>> /system/bin/mediaserver <<<
10-02 11:53:58.586: INFO/DEBUG(19299): signal 11 (SIGSEGV), fault addr c0debadd
10-02 11:53:58.586: INFO/DEBUG(19299): r0 c0debadd r1 deadbeef r2 17a3a85e r3 17a3a85e
... and so on, and so on....
我有连续自动对焦,但我在自动对焦的回调功能中调用了takePicture(),因此当我调用takePicture()时应该完成自动对焦 在此错误之后会发生以下情况:
10-02 11:53:58.916: WARN/Camera(19604): Camera server died!
10-02 11:53:58.916: WARN/Camera(19604): ICamera died
10-02 11:53:58.916: WARN/AudioSystem(92): AudioFlinger server died!
10-02 11:53:58.916: WARN/AudioSystem(92): AudioPolicyService server died!
10-02 11:53:58.916: ERROR/Camera(19604): Error 100
然后我发现了很多MPlayer错误。
所以我猜,有某种竞争条件或某种东西。有人可以解释一下待处理命令13 是错误信息正在讨论什么?
还有另一个关于此问题的stackoverflow问题:https://stackoverflow.com/questions/2277149/nexus-1-taking-photo-severe-error-in-config-proc-ctrl-command-liboemcamera但是那里没有答案。
有人可以帮助我吗?
非常有责任, 安东
答案 0 :(得分:0)
我不是肯定的,但我相信命令13是拍照,而54则是“焦点”。
我能够通过电话解决我的问题 camera.cancelAutoFocus();
之前
camera.takePicture();