如果我有一个包含标记(或“提示点”)的 WAV 格式的音频文件,有没有办法获取这些标记的数组,最好使用 Web Audio API?
我似乎记得以前看到过这样做的方法,但我似乎找不到它。
任何帮助或建议都会很棒!
如果我有一个包含标记(或“提示点”)的 WAV 格式的音频文件,有没有办法获取这些标记的数组,最好使用 Web Audio API?
我似乎记得以前看到过这样做的方法,但我似乎找不到它。
任何帮助或建议都会很棒!
Web Audio API 不支持解析"cue "
WAVE-RIFF 中的标记块 (s),仅支持音频数据本身。
在将文件加载为 ArrayBuffer(与 Web Audio API 本身无关)之后,您必须使用例如类型化数组和DataView手动解析和提取标记块。
给出解决方案有点宽泛,但本文应该能够为您指明正确的方向。
今天我偶然发现了一个支持检索提示标记的存储库,以及许多其他有用的功能。它非常适合我想要做的事情:
var request = new XMLHttpRequest();
request.open("GET", "file.wav", true);
request.responseType = "arraybuffer";
request.onreadystatechange = function() {
if (this.readyState === 4 && this.status === 200) {
var wave = new WaveFile(new Uint8Array(this.response));
console.log(wave.listCuePoints()); // Works perfectly
}
};
request.send();
它可以在浏览器和 Node.js 上运行,这太棒了!