1

音声ストレス分析ツールを書きたいです。私は読むためにオーディオストリームを開いています:

TargetDataLine line;
AudioFormat format = new AudioFormat((float) 44100, 16, 1, true, false);
DataLine.Info info = new DataLine.Info(TargetDataLine.class, format);
line = (TargetDataLine) AudioSystem.getLine(info);
line.open(format);
// Begin audio capture.
line.start();

そしてループ:

// Read the next chunk of data from the TargetDataLine.
numBytesRead = line.read(externalData, 0, externalData.length);

externalData が次のように定義されているため、バイトを含む配列を取得します。

public static byte[] externalData = new byte[1024];

私が知りたいのは、このデータをどのように解釈するかです。バイト値でプロットしようとしましたが、間違っていると思います。プロットされたバイト

X 軸は時間、Y 軸はバイト値です。

PS: McQuiston-Ford アルゴリズムに関する詳しい情報はどこで入手できますか?

4

1 に答える 1

2

バイトを振幅に変換してプロットする必要があります。ドットの付け方については、この質問を参照してください: Java でオーディオ ファイルの波形パターンを取得する

アルゴリズムに関しては、ウィキペディアはその疑似科学を述べていますが、パブリックドメインでそれについて多くがあるとは思えません.

于 2012-11-03T16:49:05.430 に答える