研究这个问题我在标准中找不到这个变量的第一手描述。实际上我根本无法找到ICY标准的正确描述。
似乎有些程序员认为这个值必须是有符号整数(例如here)。但是另一个example表示该值可以是32768,它超出了有符号整数定义。
我理解"有符号整数"在不同情况下可能意味着2字节大小或4字节大小。那么比特值的大小是多少(如果签名则包括符号)?我需要知道它,因为我编写了Verilog代码并且不想为不需要的位花费逻辑。
P.S。 " metaint"应该是指元信息区间, int 这个词不能代表整数类型!
答案 0 :(得分:1)
icy-metaint
是每个元数据块之间的媒体流数据的字节数。
假设我有一个互联网广播电台,icy-metaint
值为8192
。来自服务器的数据如下所示:
[8192 bytes audio] [metadata] [8192 bytes audio] [metadata] …
此间隔的大小取决于服务器及其配置。您应该能够处理各种各样的值。实际上,32位无符号整数就足够了。
我个人看到的元数据间隔高达64KB。在奇怪的情况下看到它们更高,我不会感到惊讶。 8KB和16KB是很常见的。另请注意,没有必要像这样具有正常值......我还看到过像15,000字节这样的事情。