Android setVideoEncodingBitRate () не определен в пакете MediaRecorder - PullRequest
3 голосов
/ 03 мая 2011

Я пытаюсь изменить битовую скорость кодирования видеозаписи на Android с помощью MediaRecorder.setVideoEncodingBitRate(int).

Я посмотрел в документации для Android, и там говорится, что этот метод для установки / изменения скорости передачи данных, но когда я пытаюсь использовать этот метод, я получаю setVideoEncodingBitrRate(int) не определен в пакете MediaRecorder.

Почему это так?

Ответы [ 2 ]

4 голосов
/ 23 июня 2011

Я предлагаю вам проверить, какую версию 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");
0 голосов
/ 03 мая 2011

setVideoEncodingBitRate - это метод экземпляра, похоже, вы пытаетесь вызвать его как статический метод (MediaRecorder.setVideoEncodingBitRate(int)), вместо этого вызывайте его из объекта MediaRecorder.

MediaRecorder mr = new MediaRecorder();
mr.setVideoEncodingBitRate(someint);

Кроме того, вы импортировали android.media.MediaRecorder?

...