私は各オーディオ入力の時間 - 周波数データを得るためにFFTの入力を探しています。私はいくつかのウェブサイトを通過し、入力はtargetDataLine
から取得する必要があることを知っています。私はオーディオデータをキャプチャするためのプログラムを作ったし、それは動作します。ここでFFTアルゴリズムを使用してオーディオを周波数データに変換するために、targetDataLineのどの部分を使用する必要がありますか?
は(オーディオ・データを収集した後)targetDataLine
System.out.println
("TargetDataLine buffer size is " + targetDataLine.getBufferSize()
+ "\n" + "TargetDataLine format is "
+ targetDataLine.getFormat().toString() + "\n"
+ "TargetDataLine info is "
+ targetDataLine.getLineInfo().toString());
を印刷し、ここにあるの私のコードで、システムの出力です:
TargetDataLine buffer size is 8000
TargetDataLine format is PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
TargetDataLine info is interface TargetDataLine supporting 14 audio formats, and buffers of at least 32 bytes
私は、この出力の一部が可能かについて混乱していますFFTアルゴリズムに使用されます。または、targetDataLine
の代わりにelseから入力を取得する必要がありますか?
アイデアの助けがありがとうございます:)ありがとう!