Android アプリで Pure Data を使用してビート検出を行おうとしています。以前は基本的な機能が動作していましたが、コードをリファクタリングしてアプリを拡張した後、libpd は必要な 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 権限があります。何か提案はありますか?