录制视频中调用 mCamera.takePicture(null, null, new MyPictureCallback());功能获取图片数据后调用mCamera.startPreview();录制视频界面卡住并没有重新预览,7.0是可以的,8.0不行 是为什么?

解决方案 »

  1.   

    要不就别拍照喽,你本来就在录制视频,把你录制视频里的当前数据保存成图片就行了。如果你用的是MediaRecorder 方式录制视频,那直接在录制过程中当需要拍照的时候把你的SurfaceView转成Bitmap再保存成图片
      

  2.   


    情况1:你既然能把相机的数据保存成视频,那么你只需要在你拍照操作的时候,调用System.arraycopy方法复制并使用当前帧数据存为图片即可。这里这么理解,其实视频就是一帧一帧图片来的情况2:使用MediaRecorder 方式录制视频,网上搜下view如何转成Bitmap就可以,本来SurfaceView就是继承的View嘛。另外你也可以参考下我以前的问题https://bbs.csdn.net/topics/390921393
      

  3.   


    我使用的是MediaRecorder 方式录制的视频,但是用你的方法 SurfaceView获取到的是一张黑色的图片
      

  4.   

    现在发现的是升级到8.0的华为mate9 上有这个问题。其他手机好像没这个问题