获取Ogg的Opus标题

时间:2015-08-22 21:30:57

标签: ios ogg opus

我有一个从Vorbis获取Ogg Stream的初始头信息的例子:

ogg_packet header;
ogg_packet header_comm;
ogg_packet header_code;

vorbis_analysis_headerout(&vd,&vc,&header,&header_comm,&header_code);

如何使用libopus从Opus获取此标头信息? 有一些信息HERE,但我无法弄清楚如何使用它。

1 个答案:

答案 0 :(得分:2)

Ogg Opus只有两个标头数据包:ID标头和注释标头。有关其内容的详细信息,请参阅the specification

如果您正在使用opusfile库读取 Ogg Opus文件,它会为您处理数据包(包括标头数据包)。您链接到的各种函数用于从已处理的标头中获取信息。

如果您正在编写 Ogg Opus文件,则目前无法使用opusfile库。但是,您可以在opus-tools包中使用opusenc中的代码,以获取如何格式化和写入这些数据包的示例。在opusenc.c中查找评论/* Write header */,然后调用opus_header_to_packet()来格式化ID标头。