Stream description file

Let's assume some information about your stream :

In this case, your stream description file should look like this:

Example 7.1. Minimalist stream description

<stream>
 <name>Acme Radio</name>
 <homepage>http://acme-radio.org/</homepage>
 <tracker>
  <host>acme-radio.org</host>
  <port>1665</port>
 </tracker>
 <jnlp>
  <version>20060629</version>
 </jnlp>
</stream>

This stream description must be published on your website. In our example, it's published at http://acme-radio.org/freecast/descriptor.xml.

Stream description option list

These are all the options you can use into the stream description file.

Table 7.1. Stream description

parameter name comments
name a short description of the stream
homepage the URL of your website or the page dedicated to the FreeCast stream for instance
tracker.host the host where your tracker is running
tracker.port the port where your tracker is running (optional if the default port 1665 is used)
config the URL of the node configuration file that the listener nodes must use
jnlp.version the FreeCast release you're using for tracker and your root node. Important in order to make your listeners run a compatible release.
[Important] Version

The jnlp.version option is important to make your listeners run a compatible FreeCast release. Take care to update it when you upgrade the tracker and root node release.

Advanced examples

There are some examples of streaming configuration files.

Specify a node configuration file

You can specify a node configuration file to override the default one. See the section called “Configuration”.

Example 7.2. Streaming description with a node configuration file

<stream>
   <name>acme Radio</name>
   <homepage>http://acme-radio.org/</homepage>
   <jnlp>
    <version>20060629</version>
    <config>http://acme-radio.org/freecast/config.xml</config>
   </jnlp>
  </stream>

There is a possible node configuration file. It will used by the node listeners as specified in the previous stream configuration file. It activates the stream signature and the http player.

Example 7.3. A possible node configuration file

<freecast>
 <node>
  <peerprovider>
   <trackeraddress>
    <host>acme-radio.org</host>        
   </trackeraddress>
  </peerprovider>
  <receiver>
   <class>peer</class>
   <validator>
    <class>signature</class>           
    <publickey>
      http://acme-radio.org/freecast/public.key
    </publickey>
   </validator>
  </receiver>
  <players>
   <player>
    <class>http</class>                
    <listenaddress>
     <port>8001</port>                 
    </listenaddress>
   </player>
  </players>
 </node>
</freecast>
1

set the tracker host (needed if the tracker.host about it isn't used in the stream configuration file)

23

activate the stream validator by signature and specifies the public key to be used

45

activate the HTTP player and specifies the port to be used

This is only a configuration sample, see the section called “Configuration” for more information.