Javascript 如何通过Ogg Vorbis字节缓冲区获取采样率

Javascript 如何通过Ogg Vorbis字节缓冲区获取采样率,javascript,oggvorbis,Javascript,Oggvorbis,我在OggVorbis头中查找包含采样率的字节范围。在中,写入该信息在标识标头中 本规范显示了标识标题: 它说,采样率在字节12-15中。但是如何解析oggVorbis文件的字节数组来获得这个采样率呢 我认为标识头必须是字节数组中的第一个块,然后采样率应该是字节12-15中的整数: const buf = buffer.slice(12, 15); const test = new Uint32Array(buf); 但它不起作用 注意:我不想使用音频API来获取采样率 根据规范,采样率是40

我在OggVorbis头中查找包含采样率的字节范围。在中,写入该信息在标识标头中

本规范显示了标识标题:

它说,采样率在字节12-15中。但是如何解析oggVorbis文件的字节数组来获得这个采样率呢

我认为标识头必须是字节数组中的第一个块,然后采样率应该是字节12-15中的整数:

const buf = buffer.slice(12, 15);
const test = new Uint32Array(buf);
但它不起作用

注意:我不想使用音频API来获取采样率


根据规范,采样率是40到44之间的字节范围。比特率为48和52:

您所要做的就是从ArrayBuffer中切片并将其写入Iteger:

// get sample rate
var bufferPart = buffer.slice(40, 48);
var bufferView = new Uint32Array(bufferPart);
var samplerate = bufferView[0];

// get bit rate
const bufferPart = buffer.slice(48, 52);
var bufferView = new Uint32Array(bufferPart);
var bitrate = bufferView[0];