我想实现一个类来阅读vorbis评论。我知道字段将以字段名称开头,后跟等号和值。但是它如何结束?文档让我觉得分号将结束字段,但我用十六进制编辑器检查了一个ogg文件,我看不到任何内容。
这就是我认为它应该在文件中的样子:
TITLE=MY SUPER TITLE;
字段名称是标题,后跟等号,然后值我的超级标题 。最后分号结束该字段。
但是在我的文件中,字段看起来像这样:
TITLE=MY SUPER TITLE....
它几乎和上面一样,但没有分号。 .
是无法显示的字符。我觉得没关系,似乎这些点代表了一个价值,它会说" 这是该领域的结束!! "但它们几乎总是不同的。我注意到总有4个点。第一个点始终具有不同的值。另一个免费的通常值为0.但并非总是......
我现在的问题是,字段如何结束?我如何阅读此评论?
另外,是的,我知道有库,我应该使用它们而不是一遍又一遍地重新发明轮子。我稍后会使用库,但首先我想知道如何自己做。仅限教育目的。
答案 0 :(得分:1)
每个字段前面都有一个小端32位整数,表示要读取的字节数。然后,您可以通过UTF8将字节转换为字符串。
有关详细信息,请参阅NVorbis' implementation(LoadComments(...))。