Проблемы с классом класса MediareCairder - SetaudiOsource () - неподдерживаемый параметр

StackOverflow https://stackoverflow.com/questions/3002537

  •  25-09-2019
  •  | 
  •  

Вопрос

Я новый в разработке Android, и у меня есть следующий вопрос / проблема.

Я играю с классом Mediarecorder, чтобы записать только аудио из микрофона. Я следую за шагами, указанными на официальном сайте: http://developer.android.com/reference/android/media/mediarecorder.html.

Таким образом, у меня есть метод, который инициализирует и настроить объект MediarecaRD, чтобы начать запись. Здесь у вас есть код:


        this.mr = new MediaRecorder();
        this.mr.setAudioSource(MediaRecorder.AudioSource.MIC);
        this.mr.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
        this.mr.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
        this.mr.setOutputFile(this.path + this.fileName);
        try {
            this.mr.prepare();
        } catch (IllegalStateException e) {
            Log.d("Syso", e.toString());
            e.printStackTrace();
        } catch (IOException e) {
            Log.d("Syso", e.toString());
            e.printStackTrace();
        }

Когда я выполняю этот код в симуляторе, благодаря logcat, я вижу, что метод setaudiosource (mediarecorder.audiosource.mic) дает следующую ошибку (с тегом Audio_ipunt), когда он называется:


ERROR/audio_input(34): unsupported parameter: x-pvmf/media-input-node/cap-config-interface;valtype=key_specific_value
ERROR/audio_input(34): VerifyAndSetParameter failed

А потом, когда метод подготовится () вызывается, я снова получаю другую ошибку:


ERROR/PVOMXEncNode(34): PVMFOMXEncNode-Audio_AMRNB::DoPrepare(): Got Component OMX.PV.amrencnb handle 

Если я начну записываю данный метод начала () ... Я получаю много сообщений, говоря:


AudioFlinger(34):RecordThread: buffer overflow

Тогда ... после остановки и выпуска .... я вижу, что файл создан, но не кажется, что это хорошо рекордер. Away, если я попробую это в реальном устройстве, я могу записать без проблем, но я не могу играть то, что я только что записал.

Я ГУЭС, что ключ в этих ошибках, которые я упомянул раньше. Как я могу исправить их? Любое предложение или помощь ??

Это было полезно?

Решение

У симулятора есть много вопросов с записью звука. Позвольте сказать, что это не работает. Ваш лучший ставка попробовать свой код в реальном устройстве !!!

Другие советы

Примечание. Эмулятор Android не имеет возможности захватить звук, но фактические устройства могут предоставить эти возможности.

Ref: http://developer.android.com/guide/topics/media/audio-capture.html.

Ну, я довольно новых при этом программировании Android, но я дам вам, ребята, что я уже узнал об этом. Несколько ответов на здесь утверждают, что у них есть проблемы на реальных устройствах, в основном Galaxy S, а эмулятор / виртуальное устройство тоже не работает. Ну, я читал из Google, что виртуальное устройство не поддерживает запись звука прямо сейчас. Это может или не может быть все еще точным. Тем не менее, значительно более опытный программист Android сказал мне, что нет никаких оснований полагать, что между устройствами есть сходства между устройствами, поскольку Android доступен на многих устройствах. Кроме того, каждая ОС Android модифицирована очень слегка, чтобы удовлетворить конкретно каждому устройству, поэтому, даже если Droid и Droid X могут одновременно работать Android Froyo, версии Froyo немного отличаются. Все, что говорит, возможно, Galaxy S имеет немного другой метод вызова для микрофона или что-то. Мое тестовое устройство происходит, чтобы быть мотодроме, поэтому я не могу быть уверен в этом, извините. Но я надеюсь, что это немного поможет!

Редактировать: Мой плохой, эмулятор делает поддержку аудиозаписи.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top