android2.2下camera连bluetooth的情况下,录像容易crash。在录像启动的时候,会有“咚”的一声,这是android默认的声音文件,可以替换,这个启动声音在很多国家是强制的,必须从speaker输出,防止偷拍、非法拍摄。在连BT的情况下,这个声音会从手机端和蓝牙设备端都输出声音。目前遇到的情况就是容易出现如下错误:
04-11 08:33:38.230 W/ATVideoIn(  690): Watch select timeout
04-11 08:33:38.230 E/ATVideoIn(  690): ATVideoIn GetFrame timeout :0
04-11 08:33:38.230 E/AtkCameraHardware(  690): GetFrame err 
   就是camera得不到frame数据,这样的错误出现后,audiorecord就没法停止,强制退出camera后,再点击就进不了camera了,系统其他功能还是正常的。在android里这个声音的输出类型是AudioSystem::ENFORCED_AUDIBLE,如果修改为AudioSystem::MUSIC,camera会变得很稳定,这样在有BT的情况下,声音就从BT出来了。不知道有没有朋友遇到过类似问题。

解决方案 »

  1.   

    此问题已解,在关闭录像的时候,在关闭record的alsa handle之前,加一个延时,大概200ms样子即可。
      

  2.   

    我在做相机开发,想设置其焦距
    Camera.getParameters().isZoomSupported() -->true
    Camera.getParameters().isSmoothZoomSupported() -->false这种情况下,我怎么才能实现变焦呢??
      

  3.   

    你的问题我没有研究过,我主要做audio方面的开发工作。