解决方案 »

  1.   

    会不会你设置的profile不好呢?
    加上你注释掉的mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));也不行么?
    你把mediaRecorder.setVideoFrameRate(16);改成30试试
      

  2.   

    測試的時候和這兩處代碼沒有關係的mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
    mediaRecorder.setVideoFrameRate(16);
    如果將自動對焦的方法去掉,是可以錄製出可以播放的視頻的,但是清晰度方面極差而且網絡上的一些博客中的關於手機錄製視頻的操作也是這種效果再加上了自動對焦操作后才錄製出花屏了的視頻
      

  3.   

    測試的時候和這兩處代碼沒有關係的mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
    mediaRecorder.setVideoFrameRate(16);
    如果將自動對焦的方法去掉,是可以錄製出可以播放的視頻的,但是清晰度方面極差而且網絡上的一些博客中的關於手機錄製視頻的操作也是這種效果再加上了自動對焦操作后才錄製出花屏了的視頻
      

  4.   

    自动对焦的代码?是这个吗?
                if (list.contains(Parameters.FOCUS_MODE_AUTO)) {
                    isFocus = true;
                    params.setFocusMode(Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
                }
    有没有把这个list打出来看看?这个代码判断是当前对焦模式是否支持自动,但设置的值却是连续自动对焦啊
      

  5.   


    SurfaceView中的显示内容和手机自带的没有什么差距   但是录制出来的文件是花屏现在我是使用手机自带的录像功能,获取录制时返回的Uri操作
      

  6.   

    你花屏是因为你写的camera.startPreview();,把这句话换成camera.stopPreview();就OK了
      

  7.   

     mediaRecorder.setPreviewDisplay(surfaceHolder.getSurface());
    将上面的这一句放到mediaRecorder.setOutputFile(file.getAbsolutePath());后面试试;
      

  8.   

    我这里设置的分辨率:
    mMediaRecorder.setVideoSize(640, 480);
    这个我把它去掉了,感觉没什么用
    //mMediaRecorder.setVideoFrameRate(16);
    在这里我提高了帧频率,然后就清晰了
    mMediaRecorder.setVideoEncodingBitRate(5*1024*1024);
      

  9.   

    mMediaRecorder.setVideoEncodingBitRate(5*1024*1024);
    给力啊!!!!!!终于解决了!!!感谢啊~~~~~~!!!!
    不过我适当调小了点,要不生成的文件太大了