未在包MediaRecorder中定义Android setVideoEncodingBitRate()

我正在尝试使用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");
上一篇:web 视频流保存API MediaRecorder


下一篇:通过RTMP流式传输Android摄像机