gpt4 book ai didi

java - Java中的音频输入捕获——字节数组

转载 作者:行者123 更新时间:2023-12-01 06:20:31 24 4
gpt4 key购买 nike

我正在尝试获取音频输入的 double /整数振幅值:

AudioFormat format = new AudioFormat(8000.0f, 8, 1, true, true);

TargetDataLine line = null;
DataLine.Info info = new DataLine.Info(TargetDataLine.class,
format);
if (!AudioSystem.isLineSupported(info)) {

}

try {
line = (TargetDataLine) AudioSystem.getLine(info);
line.open(format);
} catch (LineUnavailableException ex) {
// Handle the error ...
}

ByteArrayOutputStream out = new ByteArrayOutputStream();
int numBytesRead;
byte[] data = new byte[line.getBufferSize() / 5];


line.start();

while (true) {

numBytesRead = line.read(data, 0, data.length);
// Save this chunk of data.
out.write(data, 0, numBytesRead);
for(int i=0; i<numBytesRead; i+=1) {
System.out.println(Byte.toString(data[i]));

}
System.out.println();
}

我不明白为什么字节数组只包含值 0、-1 或 1。如何获取 double 或整数振幅值。

最佳答案

解决方案是将麦克风设备设置得更灵敏。 :)

关于java - Java中的音频输入捕获——字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8535392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com