程序包MediaRecorder中未定义Android setVideoEncodingBitRate()
我正在尝试使用MediaRecorder.setVideoEncodingBitRate(int)更改Android上视频录制的编码比特率 我查阅了android文档,其中说明了此方法用于设置/更改比特率,但当我尝试使用此方法时,我得到的程序包MediaRecorder中未定义Android setVideoEncodingBitRate(),android,media,video-recording,mediarecorder,Android,Media,Video Recording,Mediarecorder,我正在尝试使用MediaRecorder.setVideoEncodingBitRate(int)更改Android上视频录制的编码比特率 我查阅了android文档,其中说明了此方法用于设置/更改比特率,但当我尝试使用此方法时,我得到的setVideoEncodingBitrRate(int)未在packageMediaRecorder中定义 为什么会这样 setVideoEncodingBitRate是一个实例方法,似乎您试图将其作为静态方法调用(MediaRecorder.setVideo
setVideoEncodingBitrRate(int)
未在packageMediaRecorder
中定义
为什么会这样
setVideoEncodingBitRate
是一个实例方法,似乎您试图将其作为静态方法调用(MediaRecorder.setVideoEncodingBitRate(int)
),而是从MediaRecorder对象调用它
MediaRecorder mr = new MediaRecorder();
mr.setVideoEncodingBitRate(someint);
另外,您是否导入了android.media.MediaRecorder?我建议您检查您使用的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");
我正在创建它的实例,并仅使用对象设置参数。我还导入了
android.media.MediaRecorder
,然后您应该尝试按照制作MediaRecorder的步骤作为我的示例:]