Ano*_*ous 3 shoutcast audio-streaming internet-radio
研究这个问题时,我在标准中找不到该变量的第一手描述。我实际上根本找不到ICY标准的正确描述。
似乎有些程序员认为这个值必须是有符号整数(例如这里)。然而另一个例子说这个值可以是 32768,这超出了有符号整数定义。
据我所知,“有符号整数”在不同情况下可能意味着 2 字节大小或 4 字节大小。那么该值的位大小是多少(如果有符号,则包括符号)?我需要知道它,因为我编写 Verilog 代码并且不想将逻辑花费在不需要的位上。
PS“metaint”应该是元信息区间的意思,int这个词一定不是整数类型的意思!
icy-metaint
是每个元数据块之间的媒体流数据的字节数。
假设我有一个网络广播电台,其icy-metaint
值为8192
。来自服务器的数据将如下所示:
[8192 bytes audio] [metadata] [8192 bytes audio] [metadata] \xe2\x80\xa6\n
Run Code Online (Sandbox Code Playgroud)\n\n此间隔的大小取决于服务器及其配置。您应该能够处理各种值。实际上,32 位无符号整数就足够了。
\n\n我个人见过元数据间隔高达 64KB。如果在奇怪的情况下看到它们更高,我不会感到惊讶。8KB和16KB很常见。另请注意,没有必要有这样的正常值...我也见过 15,000 字节之类的东西。
\n