Тип значения icy-metaint
Исследуя эту проблему, я не могу найти из первых рук описание этой переменной в стандарте. Я на самом деле не могу найти правильное описание стандарта ICY вообще.
Кажется, некоторые программисты считают, что это значение должно быть целым числом со знаком (например, здесь). Однако другой пример говорит, что это значение может быть 32768, что находится за пределами целочисленного определения со знаком.
Я понимаю, что "целое число со знаком" в разных обстоятельствах может означать размер 2 байта или 4 байта. Так каков размер значения в битах (включая знак, если он подписан)? Мне нужно это знать, потому что я кодирую Verilog и не хочу тратить логику на ненужные биты.
PS "Метейнт" должен означать интервал метаинформации, int в этом слове не должно означать целочисленный тип!
1 ответ
icy-metaint
количество байтов данных медиапотока между каждым фрагментом метаданных.
Предположим, у меня есть интернет-радиостанция, с icy-metaint
ценность 8192
, Данные с сервера будут выглядеть примерно так:
[8192 bytes audio] [metadata] [8192 bytes audio] [metadata] …
Размер этого интервала зависит от сервера и его конфигурации. Вы должны иметь возможность обрабатывать широкий диапазон значений. Реально, 32-разрядное целое число без знака должно быть достаточно.
Я лично видел интервалы метаданных до 64 КБ. Я не удивлюсь, увидев их выше в странных ситуациях. 8KB и 16KB очень распространены. Также обратите внимание, что необязательно иметь такие нормальные значения... Я также видел такие вещи, как 15 000 байтов.