Ниже приведен код, который я использую для записи звука через микрофон в формате .opus. Я всегда получаю сообщение об ошибке MediaRecorder: начало не удалось: -38. Но это будет работать нормально, если изменить выходной формат и аудиокодер на любой другой, например THREE_GPP, MPEG_4 с AAC или AMR. Так как мне нужен тип файла opus, я не могу использовать другие аудио форматы. Поскольку Android имеет официальную поддержку на устройстве Opus Over (Android 5.0+), это должно работать. Поправь меня, если я здесь что-то не так делаю.
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.WEBM);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.VORBIS);
mRecorder.setOutputFile(fileName);
mRecorder.prepare();
mRecorder.start();