StartRecording() вызывает неинициализированную AudioRecordJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 StartRecording() вызывает неинициализированную AudioRecord

Сообщение Anonymous »

Я пытаюсь записать голосовой звонок на Android. Для этого я использую класс AudioRecord/API Android. Но по какой-то причине AudioRecord не может записывать голосовые вызовы на некоторых устройствах (особенно в последних версиях ОС 6.0, 7.0). Всякий раз, когда я устанавливаю для параметра AudioSource объекта AudioRecord значение «VOICE_CALL», т.е. (MediaRecorder.AudioSource.VOICE_CALL), это дает мне это исключение


java .lang.IllegalStateException: startRecording() вызывается
неинициализированной AudioRecord


Но когда я устанавливаю аудиоисточник на «MIC» , он работает нормально, но, конечно, не записывает голосовой вызов.

Я пытался использовать класс MediaRecord для Android, но столкнулся с той же проблемой, т.е. отлично работает для «MIC» ", но отсутствует "VOICE_CALL". Я также попробовал множество доступных решений на нескольких форумах, но все равно безуспешно.

Ниже я поделился небольшим фрагментом своего кода. Любая помощь в этом вопросе будет высоко оценена. Спасибо

recorder = new AudioRecord(MediaRecorder.AudioSource.VOICE_CALL,
44100, AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT, AudioRecord.getMinBufferSize(44100,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENCODING_PCM_16BIT));
recorder.startRecording();


Подробнее здесь: https://stackoverflow.com/questions/496 ... udiorecord
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»