android视频录制MediaRecorder预览旋转角度问题

来源:互联网 发布:淘宝买药暗语 编辑:程序博客网 时间:2024/06/05 13:22
开发视频录制插件,结果发现竖屏录制视频的时候,出现预览窗口画面别旋转90度的问题。所以贴出解决代码。共同进步。
  mediarecorder = new MediaRecorder();// 创建mediarecorder对象                  // 设置录制视频源为Camera(相机)                                                                                                                                 Camera camera = Camera.open();                  Camera.Parameters parameters = camera.getParameters();  //              parameters.setRotation(90);                  parameters.setPreviewSize(640, 480);                     parameters.setPictureSize(640, 480);                  camera.setParameters(parameters);                   camera.setDisplayOrientation(90);                  camera.unlock();                  mediarecorder.setCamera(camera);                  mediarecorder.reset();                                  mediarecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);                                  // 设置录制完成后视频的封装格式THREE_GPP为3gp.MPEG_4为mp4                  mediarecorder  .setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);                                  mediarecorder.setVideoSize(640, 480);                                  // 设置录制的视频编码h263 h264                  mediarecorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);                  // 设置视频录制的分辨率。必须放在设置编码和格式的后面,否则报错                                 // 设置录制的视频帧率。必须放在设置编码和格式的后面,否则报错                  mediarecorder.setVideoFrameRate(20);                                  mediarecorder.setPreviewDisplay(surfaceHolder.getSurface());                  // 设置视频文件输出的路径                  mediarecorder.setOutputFile("/sdcard/love.mp4");                  try {                      // 准备录制                      mediarecorder.prepare();                      // 开始录制                      mediarecorder.start();                  } catch (IllegalStateException e) {                      // TODO Auto-generated catch block                      e.printStackTrace();                  } catch (IOException e) {                      // TODO Auto-generated catch block                      e.printStackTrace();                  }  

0 0
原创粉丝点击