2011-11-23 96 views
2

我試圖在我的android應用程序中使用Pure Data來做一些節拍檢測。我之前有過基本功能,但在重構我的代碼並擴展應用之後,libpd無法正確創建所需的AudioRecord實例。下面是我收到的錯誤:Android AudioRecord - 原生初始化失敗

[ android.media.AudioTrack ] getMinBufferSize(): Invalid channel configuration. 
[ android.media.AudioTrack ] getMinBufferSize(): Invalid channel configuration. 
set(): sampleRate 44100, channels 12, frameCount 8832 
Could not get audio input for record source 1 
Error creating AudioRecord instance: initialization check failed. 
[ android.media.AudioRecord ] Error code -20 when initializing native AudioRecord object. 
java.io.IOException: unable to initialize AudioRecord instance for sr: 44100, ch: 2, bufSize: 4416 
set(): sampleRate 44100, channels 16, frameCount 8832 
Could not get audio input for record source 1 
Error creating AudioRecord instance: initialization check failed. 
[ android.media.AudioRecord ] Error code -20 when initializing native AudioRecord object. 
java.io.IOException: unable to initialize AudioRecord instance for sr: 44100, ch: 1, bufSize: 4416 

錯誤代碼-20意味着本地初始化失敗,所以我就在現在做什麼損失。我的清單中有RECORD_AUDIO權限。你有什麼建議嗎?

回答

1

我在開發很多之前就已經看到了這個錯誤,可能忘記了發佈AudioRecord。因此,請確保您嘗試重新啓動手機並且沒有其他任何錄製應用程序。

就像你有時可能會崩潰應用程序,並且在應用程序死後仍然播放音樂,我猜這是硬件可能在處理過程中死亡後仍然處於不良狀態的情況之一。