大佬教程收集整理的这篇文章主要介绍了android – 从相机录制视频而不用镜像它就像快照聊天一样,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
预习
录制和播放后
这是我的代码
// return camera instance when activity open first time private Camera getCameraInstance() { // TODO Auto-generated method stub releaseCamera(); releaseMediaRecorder(); Camera c = null; try { cameraId = findFrontFacingCamera(); if (cameraId < 0) { cameraId = findBACkFacingCamera(); } c = Camera.open(cameraId); // setCameraDisplayOrientation(this,cameraId,c); //setCameraDisplayOrientation(this,c); c.setDisplayOrientation(90); } catch (Exception E) { // Camera is not available (in use or does not exist) } return c; // returns null if camera is unavailable } // return __cameraPreview Id 1 to open front camera privatE int findFrontFacingCamera() { int cameraId = -1; // Search for the front facing camera int numberOfCameras = Camera.getnumberOfCameras(); for (int i = 0; i < numberOfCameras; i++) { Camera.CameraInfo info = new Camera.CameraInfo(); Camera.getCameraInfo(i,info); if (info.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) { cameraId = i; setOrientationHint = 270 ; cameraFront = true; break; } } return cameraId; } // prepare and start recording private Boolean prepareMediaRecorder() { mediaRecorder = new MediaRecorder(); try { myCamera.unlock(); } catch (Exception E) { e.printStackTrace(); } mediaRecorder.setCamera(myCamera); mediaRecorder.setAudiosource(MediaRecorder.Audiosource.MIC); mediaRecorder.setVideosource(MediaRecorder.Videosource.CAMERA); //mediaRecorder.setOutputFormat(MediaRecorder.outputFormat.MPEG_4); if (cameraPreview.getVideoSize() != null) { mediaRecorder.setOutputFormat(MediaRecorder.outputFormat.MPEG_4); mediaRecorder.setOutputFile(saveUrl); mediaRecorder.setVideoEncodingBitRate(10000000); mediaRecorder.setVideoFrameRate(30); mediaRecorder.setVideoSize(cameraPreview.getVideoSize().width,cameraPreview.getVideoSize().height); mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264); mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); } else { CamcorderProfile cp = CamcorderProfile.get(cameraId,CamcorderProfile.QUALITY_HIGH); mediaRecorder.setProfile(cp); } Log.e(tag,"Video profile CamcorderProfile.QUALITY_HIGH: " + "cp.quality:" + cp.quality + ",cp.videoFrameWidth:" + cp.videoFrameWidth + ",cp.videoFrameHeight:" + cp.videoFrameHeight); mediaRecorder.setMaxDuration(MAX_VIDEO_LENGTH); mediaRecorder.setOrientationHint(setOrientationHint); try { mediaRecorder.prepare(); } catch (IllegalStateException | IOException E) { e.printStackTrace(); releaseMediaRecorder(); return false; } mediaRecorder.start(); return true; }
我希望它应该与播放中的预览相同. Sanpchat已经做了同样的事情,提前感谢.
以上是大佬教程为你收集整理的android – 从相机录制视频而不用镜像它就像快照聊天一样全部内容,希望文章能够帮你解决android – 从相机录制视频而不用镜像它就像快照聊天一样所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。