1
我嘗試構建一個應用程序,其中有一個記錄功能。我希望用戶能夠選擇記錄質量,其中一個選項是AAC記錄。我正在使用下面的代碼,但我一直在設置audioSamplingRate錯誤..任何想法?Mediarecorder setParameter failed(setAudioSamplingRate)
mediaRecorder = new MediaRecorder();
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mediaRecorder.setAudioSamplingRate(96000);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
和
04-29 10:32:17.477: E/MediaRecorder(18750): setParameters(audio-param-sampling-rate=96000) failed: -22
04-29 10:32:17.477: E/com.test.com.AudioRecorder(18750): setParameter failed.
04-29 10:32:17.477: E/com.test.com.AudioRecorder(18750): prepare() method called on illegal state
96 kHz是一個非常高的採樣率,並不保證被支持。我建議您嘗試一個共同採樣率<= 48 kHz(例如48000,41001,22050,16000,8000)。 – Michael 2013-04-29 09:26:10
我試圖將它設置爲16000,不會返回最初的錯誤,但另一個..以下錯誤:04-29 12:15:09.989:E/MediaRecorder(23954):準備失敗:-2147483648 04-29 12:15:09.989:E/com.test.com.AudioRecorder(23954):準備失敗。 – 2013-04-29 10:16:12