我使用this类来播放我的Wav文件。
非常好,但如何在某个位置(KB或秒)启动我的wav文件?
auline.start();
int nBytesRead = 0;
byte[] abData = new byte[EXTERNAL_BUFFER_SIZE];
try {
while (nBytesRead != -1) {
nBytesRead = audioInputStream.read(abData, 0, abData.length);
System.out.println("s");
if (nBytesRead >= 0)
auline.write(abData, 0, nBytesRead);
}
} catch (IOException e) {
return;
} finally {
auline.drain();
auline.close();
}
这是代码的一部分。
答案 0 :(得分:1)
Clip
(1)可以轻松地从任何需要的地方开始发声(以秒为单位)。有关示例,请参阅JavaSound info. page中的Clip
代码。
答案 1 :(得分:0)
使用此值offset
:
<强> 0 < offset < lengthOfArray
强>
因此它将从偏移的当前值开始读取,因此只写入读取数据。现在您使用的是offset = 0
auline.write(abData, 0, nBytesRead)
---&gt; auline.write(abData, offset, nBytesRead)
其中offset
大于0但小于nBytesRead
请参阅文档#write(byte[], int, int)