<!ELEMENT Infocast-server (channel+ | (channel-parameters, object+))>
<!ELEMENT channel (channel-parameters, object+)>
<!ELEMENT channel-parameters (ip-address, ip-port-number, time-to-live,
(bandwidth-limit | bit-rate), burst-delay?,
payload-size, signature-type)>
<!ELEMENT ip-address (#PCDATA)>
<!ELEMENT ip-port-number (#PCDATA)>
<!ELEMENT time-to-live (#PCDATA)>
<!ELEMENT bandwidth-limit (#PCDATA)>
<!ELEMENT bit-rate (#PCDATA)>
<!ELEMENT burst-delay (#PCDATA)>
<!ELEMENT payload-size (#PCDATA)>
<!ELEMENT signature-type (#PCDATA)>
<!ELEMENT object (name, infocast-type?, source, precoding?, delay?)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT infocast-type (#PCDATA)>
<!ELEMENT source (source-name, source-type)>
<!ELEMENT source-type (#PCDATA)>
<!ELEMENT source-name (#PCDATA)>
<!ELEMENT precoding (#PCDATA)>
<!ELEMENT delay (#PCDATA)>
The Infocast server configuration XML example below shows a configuration of a metadata channel, two boot image channels (1910 and 1510), two splash image channels (1910 and 1510) and two channels distributing IIPs for dynamic download (1910 and 1510). The metadata channel consists of boot image channel information (1910 and 1510), configuration and time.
The name of this file in the evaluation configuration is infocastconfig.xml
.
<?xml version="1.0"?>
<!DOCTYPE infocast-server SYSTEM "infocastconfig.dtd">
<infocast-server>
<!-- Metadata channel configuration -->
<channel>
<channel-parameters>
<ip-address>224.2.2.2</ip-address>
<ip-port-number>22222</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>16</bit-rate>
<payload-size>256</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>motorola-vip1910</name>
<infocast-type>bootcastinfo</infocast-type>
<source>
<source-name>bootcast_1910</source-name>
<source-type>file</source-type>
</source>
<precoding>none</precoding>
</object>
<object>
<name>kreatel-ip-stb-rev-6</name>
<infocast-type>bootcastinfo</infocast-type>
<source>
<source-name>bootcast_1510</source-name>
<source-type>file</source-type>
</source>
<precoding>none</precoding>
</object>
<object>
<name>kreatel-ip-stb-rev-11</name>
<infocast-type>bootcastinfo</infocast-type>
<source>
<source-name>bootcast_1510</source-name>
<source-type>file</source-type>
</source>
<precoding>none</precoding>
</object>
<object>
<name>cfg.infocast</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>infocastclientconfig.xml</source-name>
<source-type>xmlfile</source-type>
</source>
<precoding>crc16</precoding>
</object>
<object>
<name>cfg.media.channeltable</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>channeltable.txt</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
<object>
<name>cfg.portal.whitelisturls</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>whitelisturls.xml</source-name>
<source-type>xmlfile</source-type>
</source>
<precoding>crc16</precoding>
</object>
<object>
<name>cfg.portal.proxylist</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>proxylist.xml</source-name>
<source-type>xmlfile</source-type>
</source>
<precoding>crc16</precoding>
</object>
<object>
<name>var.utctime</name>
<infocast-type>utctime</infocast-type>
<source>
<source-name></source-name>
<source-type>utctime</source-type>
</source>
<precoding>none</precoding>
</object>
</channel>
<!-- IP-STB 1910 Boot image channel configuration -->
<channel>
<channel-parameters>
<ip-address>224.2.2.1</ip-address>
<ip-port-number>22222</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>2048</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>software</name>
<infocast-type>bootcastfile</infocast-type>
<source>
<source-name>kreatv-bi_1910</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
<!-- IP-STB 1910 Splash image channel configuration -->
<channel>
<channel-parameters>
<ip-address>224.2.2.3</ip-address>
<ip-port-number>11111</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>512</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>splash-data</name>
<infocast-type>bootcastfile</infocast-type>
<source>
<source-name>kreatv-splash_1910</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
<!-- IP-STB 1510 Boot image channel configuration -->
<channel>
<channel-parameters>
<ip-address>224.2.2.11</ip-address>
<ip-port-number>22222</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>2048</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>software_1510</name>
<infocast-type>bootcastfile</infocast-type>
<source>
<source-name>kreatv-bi_1510</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
<!-- IP-STB 1510 Splash image channel configuration -->
<channel>
<channel-parameters>
<ip-address>224.2.2.13</ip-address>
<ip-port-number>11111</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>512</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>splash-data_mipsel</name>
<infocast-type>bootcastfile</infocast-type>
<source>
<source-name>kreatv-splash_1510</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
<channel>
<channel-parameters>
<ip-address>224.2.2.65</ip-address>
<ip-port-number>22222</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>4096</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>kreatv-inst-settings</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>kreatv-inst-settings_3.0.1_vip1900.iip</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
<channel>
<channel-parameters>
<ip-address>224.2.2.66</ip-address>
<ip-port-number>22222</ip-port-number>
<time-to-live>5</time-to-live>
<bit-rate>4096</bit-rate>
<payload-size>1024</payload-size>
<signature-type></signature-type>
</channel-parameters>
<object>
<name>kreatv-inst-settings</name>
<infocast-type>generic</infocast-type>
<source>
<source-name>kreatv-inst-settings_3.0.1_vip1500.iip</source-name>
<source-type>file</source-type>
</source>
<precoding>crc16</precoding>
</object>
</channel>
</infocast-server>
The configuration file <installation home>/kreatv-server/infocast/infocastconfig.xml contains all settings for how to distribute files and information. If this file is modified, the server must be restarted:
<installation home>/kreatv-server/infocast/infocastserverd restart
The information that is distributed is referred to as an object, and the IP-address that multicasts the information is referred to as a channel. Every channel is enclosed by a <channel> tag and directly after this tag is a <channel-parameters> tag that holds the information about the channel. The following parameters can be modified:
Element | Comment | Example value |
---|---|---|
ip-address | The multicast IP-address. | 224.2.2.2 |
ip-port-number | The multicast port number. | 22222 |
time-to-live | The Time to Live (TTL) of the packet. | 5 |
bandwidth-limit | bit-rate | Approximate bit rate [kbit/s].
NOTE! The bit-rate at which infocast objects are transmitted will affect the CPU load of the receiving set top boxes. Always keep this setting as low as possible. |
16 |
burst-delay | Initial length of the pauses between the Infocast bursts [ms]. This pause may be increased or decreased during run time depending on desired bit rate. | 40 |
payload-size | The maximum payload size of each packet [byte].
NOTE! The total UDP packet size will be payload-size + precoding (0-4 bytes) + UDP header size (44+ bytes). |
256 |
signature-type | Not currently used. | N/A |
After the channel parameters is an <object> tag that contains information about the information that is distributed. Every channel can contain any number of objects. The following parameters can be modified:
Element | Comment | Values |
---|---|---|
name |
The name that identifies the object. This parameter is
generally not configurable.
Note! An Infocast URL looks like this:
|
Type: String Value set: Example: |
infocast-type |
The type of the object.
|
Type: String Value set: Default value: |
source-name |
The name of the file that is distributed if the next
parameter has the value file or xmlfile .
|
Type: String Value set: Example: |
source-type |
Indicates the type of source. If the
source is set to xmlfile , then the XML file is
validated against the DTD given in the XML file. If the
validation fails, then the server will not start.
|
Type: String Value set: |
precoding |
Checksum method.
The time and utctime objects are always sent without checksum regardless of this setting. |
Type: String Value set: Default value: |
delay |
Minimum delay from the object is sent until it is sent the next time in seconds. The objects with delay set to something greater than 0 form a separate queue. This implies that they are sent at the specified intervals as long as the bandwidth allocated to the channel is enough. The |
Type: Integer Value set: Default value: |
From Infocast Server version 3.1 the name length are
extended on object name
. Long names are allowed for
infocast-type generic
where the source-type
is file
or xmlfile
. The name length has
to be less than payload-size
minus 50. Thus increase
the payload-size
to make it possible to use very long
names.
For Infocast Server version 3.0, maximum 29 characters can be used
for object name
.
Allowed characters | Forbidden characters |
---|---|
printable ASCII | & " > < |
Below the compatibility matrix shows the need of in sync client and server to use long infocast names.
Compatibility matrix | Infocast Server >= 3.1 | Infocast Server < 3.1 |
---|---|---|
KreaTV >= 4.x | Long names supported | No long names can be sent from server |
KreaTV < 4.x | Objects with long names discarded by client | No long names can be sent from server |