Я использую одну демо-запись видео и аудио с использованием MediaRecorder
Загрузите демо-версию с listen: Образец Android MediaRecorder
Существует один метод prepareVideoRecorder()
в MainActivity.java
.в этом методе инициализация и устанавливают источник Аудио и видео как:
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
Теперь я хочу аудио ON или OFF функциональность.
Для этого я попробую вот так:
if (!AppSetting.getValue(activity, Config.AUDIO, false)) {
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
}else {
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
}
Но приложение завершается с ошибкой ниже:
java.lang.IllegalStateException
at android.media.MediaRecorder.setAudioEncoder(Native Method)
Так, как я могу решить эту ошибку, или естьдругое решение для Audio ON или OFF :