The shout command


shout ?options? host port password


The shout command opens a network socket to an icecast or shoutcast audio streaming server. The command returns a channel identifier that may be used in future invocations of commands like puts and flush.

The library takes care of stream synchronization. If data is provided too quickly, a puts or flush command will block as required. To avoid blocking, an application may make use of the writable fileevent. That event fires whenever the stream is ready to handle more data.

The following options may also be present before host to specify additional information about the connection:

Command Options

-bitrate rate
Specify the nominal bitrate of the stream
-channels num
Specify the number of channels (usually one or two).
-description text
Sets the description of this stream.
-format format
Sets the audio format of this stream. The currently supported formats are: ogg (default) and mp3.
-genre list
Sets the genre (or genres) of the stream. This is usually a keyword list, eg "pop rock rap".
-mount path
Sets the mount point for this stream, for protocols that support this option.
-name text
Sets the name of the stream.
-protocol protocol
Set the protocol with which to connect to the server. Supported protocols are: http (default), audiocast, and shoutcast.
-public boolean
Setting this to 1 asks the server to list the stream in any directories it knows about. To suppress listing, set this to 0. The default is 0.
-quality level
Specify the Ogg Vorbis encoding quality of the stream.
-samplerate rate
Specify the samplerate of the stream.
-url url
Sets the URL of a site about this stream.
-user user
Sets the user to authenticate as, for protocols that can use this parameter. The default is source.

Configuration Options

The chan configure command can be used to modify the stream's metadata at any time during the lifetime of the connection.
-song text
Sets the song information for the stream. Only MP3 streams support this type of metadata update.