我正在尝试使用MediaRecorder.setVideoEncodingBitRate(int)更改Android上视频录制的编码比特率.
我查看了android文档,它指出了此方法来设置/更改比特率,但是当我尝试使用此方法时,我在程序包MediaRecorder中未定义setVideoEncodingBitrRate(int).
为什么会这样呢?
解决方法:
我建议您检查一下所用的API版本
setVideoEncodingBitRate()仅在API v8或Android 2.1上提供
如果您使用的版本小于此版本,则将不可用:D
你也可以这样使用
webCamRecorder = new MediaRecorder();
if (target_holder == null)
return;
webCamRecorder.setPreviewDisplay(target_holder.getSurface());
webCamRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
webCamRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
webCamRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
webCamRecorder.setAudioEncodingBitRate(196608);
webCamRecorder.setVideoSize(640, 480);
webCamRecorder.setVideoFrameRate(30);
webCamRecorder.setVideoEncodingBitRate(15000000);
webCamRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
webCamRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
webCamRecorder.setOutputFile("your location to save");