伙计们可以告诉我,我应该如何设置mediaRecorder中的参数,以便通过编码获得最佳的视频录制效果,而不必考虑手机的物理限制?或者是否有任何影响我的编码mediaRecorder造成的小失真?如何设置MediaRecorder以获得最佳的视频质量效果?
有人可以帮助我解决这个问题,因为我在android/java编程中颇为新颖。谢谢:) 如果你们中的某些人可能猜测不清楚的参数,我实际上使用首选项设置了一些参数..我错过了哪些参数可能有助于改进视频编码过程,例如:帧速率
伙计们可以告诉我,我应该如何设置mediaRecorder中的参数,以便通过编码获得最佳的视频录制效果,而不必考虑手机的物理限制?或者是否有任何影响我的编码mediaRecorder造成的小失真?如何设置MediaRecorder以获得最佳的视频质量效果?
有人可以帮助我解决这个问题,因为我在android/java编程中颇为新颖。谢谢:) 如果你们中的某些人可能猜测不清楚的参数,我实际上使用首选项设置了一些参数..我错过了哪些参数可能有助于改进视频编码过程,例如:帧速率
根据API级别,您可能希望使用现有的配置文件。
没有配置文件:
recorder.setVideoSize(640, 480);
recorder.setVideoFrameRate(16); //might be auto-determined due to lighting
recorder.setVideoEncodingBitRate(3000000);
recorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);// MPEG_4_SP
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
或者,如果你想使用现有的配置文件
CamcorderProfile cpHigh = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH);
recorder.setProfile(cpHigh);
请注意,你不能有两个选项在一起,你会得到错误或您准备将无法正常工作
由于并非所有的Android API和/或设备都支持相同的值,您将不得不查询每个设备的最大值或找到每天都有用的东西回覆。
谢谢,为我工作! – 2017-04-21 04:10:45
正在谈论质量?这基于底层的编解码器和相机,因设备而异,但尝试将视频编码器更改为H264并提高分辨率,看看是否有帮助。 – bluefalcon 2011-05-19 17:15:24
@Ravi嘿,只是为了确认我的代码的哪一部分确实处理编码和解析度? – Vivian 2011-05-20 01:00:42
您必须在MediaRecorder类实例上使用'void setVideoSize(int width,int height)'和encoding'public void setVideoEncoder(int video_encoder)'来设置分辨率。检查MediaRecorder documnetation [这里](http://developer.android.com/reference/android/media/MediaRecorder.html) – bluefalcon 2011-05-20 10:41:20