android后台录像 --未验证


LZ 最近我也在研究后台录像的问题,已经实现后台录像。
关于后台运行的话,应该自己建一个Service,在Service中用MediaRecoder录像。
但是有一个问题需要解决,需要改一下Android源码:
在得到android.hardware.Camera对象后,如果不给Camera设置SurfaceHolder的话,CameraService会报错:
mSurface or mPreviewWindow must be set before startRecordingMode.

可以暂时先把报错的地方 屏蔽掉,或许还有其他更好办法,我还没发现。
报错的地方在: \framework\base\services\camera\libcameraservice\CameraService.cpp
// start preview or recording
status_t CameraService::Client::startCameraMode(camera_mode mode) {
      LOG1("startCameraMode(%d)", mode);
      Mutex::Autolock lock(mLock);
      status_t result = checkPidAndHardware();
      if (result != NO_ERROR) return result;

      switch(mode) {
            case CAMERA_PREVIEW_MODE:
                  if (mSurface == 0 && mPreviewWindow == 0) {
                        LOG1("mSurface is not set yet.");
                        // still able to start preview in this case.
                  }
                  return startPreviewMode();
            case CAMERA_RECORDING_MODE:
                    //zhaoch86 marked for usb camera background recording 
                   

                  return startRecordingMode();
            default:
                  return UNKNOWN_ERROR;
      }
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值