0

我正在寻找包含采样率的 OggVorbis 标头中的字节范围。在规范中写道,此信息在标识头中

此处的规范显示了标识标头:

它说,采样率在字节 12-15 中找到。但是我怎样才能解析一个 oggVorbis 文件的字节数组来获得这个采样率呢?

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

const buf = buffer.slice(12, 15);
const test = new Uint32Array(buf);

但它不起作用。

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

4

1 回答 1

0

根据规范,采样率是 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];
于 2017-07-22T10:39:38.840 回答