我正在使用MediaRecorder
从听到的声音中下载演示: Android MediaRecorder Sample
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)
所以我该如何解决此错误,或者还有另一种音频 ON 或 OFF 的解决方案:
答案 0 :(得分:0)
我找到了解决方法:
如果我的开关 ON ,则执行 30309
部分(声音已记录)。如果我的开关 OFF ,则执行if
部分(声音未录制)。
else