gpt4 book ai didi

java - Java Sound Api:将记录保存到磁盘后无法播放Wav文件

转载 作者:行者123 更新时间:2023-12-03 02:23:53 26 4
gpt4 key购买 nike

我正在从麦克风进行录音,并将其保存为.wav文件到磁盘。

我不能用Media Player播放wav文件吗?这正常吗?

AudioFormat format = new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
44100.0F, 16, 2, 4, 44100.0F, false);
DataLine.Info info = new DataLine.Info(TargetDataLine.class, format); // format is an AudioFormat object

// Obtain and open the line.
try {
targetLine = (TargetDataLine) AudioSystem.getLine(info);
targetLine.open(format);
targetLine.start();
ByteArrayOutputStream out = new ByteArrayOutputStream();
int numBytesRead;
byte[] data = new byte[targetLine.getBufferSize() / 5];

targetLine.start();

while (recording) {
numBytesRead = targetLine.read(data, 0, data.length);
out.write(data, 0, numBytesRead);
System.out.println(Arrays.toString(data));
}


File fileOut = new File("C:\\audio\\audio6.wav");
AudioInputStream ais = new AudioInputStream(targetLine);

if (AudioSystem. isFileTypeSupported(AudioFileFormat.Type.WAVE,ais)) {
AudioSystem.write(ais, AudioFileFormat.Type.WAVE, fileOut);
System.out.println("writen");
}
targetLine.stop();

ais.close();

最佳答案

如果文件正常运行,则应该可以在媒体播放器中播放该文件。

我建议您获得免费音频编辑器Audacity(http://audacity.sourceforge.net/)的副本,然后查看数据。
首先检查文件中是否有一些数据,然后检查字节序,位深度和采样率是否正确(切换并查看是否有明显的噪音)。

如果这样不起作用,请尝试从文件而不是麦克风中读取一些样本,然后在到达另一端时检查它们是否相同。

如果您尚未找到它,那么这是Java Audio的绝佳资源
http://www.jsresources.org/

关于java - Java Sound Api:将记录保存到磁盘后无法播放Wav文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7905952/

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