2012-04-11 10 views
1

私は今Android SDKのオーディオファイルを操作する良い方法を探して1週間以上インターネットを精練しています。私の目標は、オーディオに特殊効果を適用することです。誰かが私にこれを助けることができる資源を指摘してもらえますか? StackOverflowに向ける必要があったのは、私が答えを知っている唯一の信頼できる場所だからです。Androidオーディオプログラミングはどこから始めるべきですか?

答えて

1

私はオーディオファイルをデジタルで操作したいと思っています。つまり、いくつかのDSP技術を使ってバイトレベルにしていますか?

リアルタイムで(つまり、マイクロホンから)操作する場合は、android.media.AudioRecord.AudioRecordをご覧ください。例:

audioRecord = new AudioRecord(
    MediaRecorder.AudioSource.MIC, 
    8000, 
    AudioFormat.CHANNEL_IN_STEREO, 
    AudioFormat.ENCODING_PCM_16BIT, 
    AudioTrack.getMinBufferSize(
     8000, 
     AudioFormat.CHANNEL_IN_STEREO, 
     AudioFormat.ENCODING_PCM_16BIT)*20); 

audioRecord.startRecording(); 
byte[] readBuffer = new byte[640]; 
int nbytes = audioRecord.read(readBuffer.getData(),0,readBuffer.length); 

これにより、生のオーディオデータ(上記のリニアPCM 16ビットステレオの例)にアクセスできます。

既存の保存されたファイル(例:sdcard)を読み込み、オーディオを操作する場合は、java.io.FileInputStreamをご覧ください。もちろん、既存のファイルがリニアPCM以外のフォーマット(MP3など)であれば、DSPタイプの操作を適用する前にリニアPCMにデコードすることをお勧めします。ファイルをバイト配列に読み込む例についてはCick hereを参照してください。 Click hereは、MP3ファイルの読み込みと復号された生のPCMデータの取得の例へのリンクです。

0

Ringdroidは、オープンソースであり、検討する価値があります。これがあなたが望むことをしているかどうかは分かりません。

関連する問題