<p><spanstyle=" text-indent: 0.2500in;"></span><fontsize=3>The <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>utility is a source client for the Icecast media streaming server. In its basic mode of op-<br>
<spanstyle=" text-indent: 0.2500in;"></span>eration, it streams media files and data from standard input "as-is" -- such as Ogg Vorbis, Ogg Theora and<br>
<spanstyle=" text-indent: 0.2500in;"></span>MP3 -- to a server. It can also use various external decoders and encoders to reencode from one format<br>
<spanstyle=" text-indent: 0.2500in;"></span>to another, and stream the result. The only requirement is that the external programs support writing to or<br>
<spanstyle=" text-indent: 0.2500in;"></span>reading from standard input, and can be used from the command line.</p>
<spanstyle=" text-indent: 0.6800in;"></span></tt></I>Use the XML configuration in <fontsize=3><tt><I>configfile</tt></I><fontsize=3>. ( Mandatory. )</p>
<p><spanstyle=" text-indent: 0.2700in;"></span><fontsize=3><tt><B>-h</tt></B><fontsize=3>Print a summary of available command line parameters with short descriptions and exit.</p>
<p><spanstyle=" text-indent: 0.2700in;"></span><fontsize=3><tt><B>-q</tt></B><fontsize=3>Be more quiet. Suppress the output that external programs send to standard error.</p>
<p><spanstyle=" text-indent: 0.2700in;"></span><fontsize=3><tt><B>-V</tt></B><fontsize=3>Print the <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>version number and exit.</p>
<p><spanstyle=" text-indent: 0.2700in;"></span><fontsize=3><tt><B>-v</tt></B><fontsize=3>Produce more verbose output from <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>. Use twice for even more verbose output.</p>
<p><spanstyle=" text-indent: 0.2500in;"></span><fontsize=3>When the <fontsize=3><tt><B>-q</tt></B><fontsize=3>and <fontsize=3><tt><B>-v</tt></B><fontsize=3>parameters are provided simultaneously, an additional line of information about the<br>
<spanstyle=" text-indent: 0.2500in;"></span>currently streamed file -- playlist position, approximate playing time and bitrate -- is displayed.</p>
<p><fontsize=3><B>Runtime control<br>
<spanstyle=" text-indent: 0.2500in;"></span></B>On POSIX systems, <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>offers limited runtime control via signals when it is not streaming data<br>
<spanstyle=" text-indent: 0.2500in;"></span>from standard input. By sending a signal to the ezstream process, e.g. with the <fontsize=3><tt>kill</tt><fontsize=3>(1) utility, a certain<br>
<spanstyle=" text-indent: 0.2500in;"></span>action will be triggered.</p>
<spanstyle=" text-indent: 0.5900in;"></span></tt></B>Rereads the playlist file after the track that is currently streamed. If the playlist is not to be shuffled,<br>
<spanstyle=" text-indent: 0.5900in;"></span><tt><B>ezstream</tt></B><fontsize=3>attempts to find the previously streamed file and continue with the one following it, or<br>
<spanstyle=" text-indent: 0.5900in;"></span>restarts from the beginning of the list otherwise.</p>
<spanstyle=" text-indent: 0.5900in;"></span></tt></B>Skips the currently playing track and moves on to the next in playlist mode, or restarts the current<br>
<spanstyle=" text-indent: 0.5900in;"></span>track when streaming a single file.</p>
<p><fontsize=3>The <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>utility uses a simple XML configuration file format. It has a tree-like structure and is made up of <fontsize=3><I>XML elements</I><fontsize=3>. Of all the possible XML features, only regular elements that contain text or other elements, and comments, appear in an <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>configuration file.</p>
<p><fontsize=3>Each element in the configuration file consists of a <fontsize=3><tt>start tag</tt><fontsize=3>, its content and an <fontsize=3><tt>end tag</tt><fontsize=3>. For ex- ample:</p>
<spanstyle=" text-indent: 0.3600in;"></span><!-- XML comments look like this. --></p>
</tt></td>
</tr>
</table>
<aname="XML CONFIGURATION"></a><h2>XML CONFIGURATION</h2><p><spanstyle=" text-indent: 0.4500in;"></span><fontsize=3>In this section, each available element is listed and described. Note that for this purpose, elements are in-<br>
<spanstyle=" text-indent: 0.4500in;"></span>troduced in their short, i.e. empty form. In the configuration file, they need to be used as <fontsize=3><I>start tag +<br>
<spanstyle=" text-indent: 0.4500in;"></span>content + end tag</I><fontsize=3>, like in the introductory example shown above.</p>
<p><fontsize=3>OpenBSD 4.1 February 20, 2007 1<br>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Mandatory. ) The configuration file's root element. It contains all other configuration elements.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Mandatory. ) Specifies the location and mountpoint of the Icecast server, to which the stream will be<br>
<spanstyle=" text-indent: 0.4500in;"></span>sent. The content must be of the form <fontsize=3><tt>http://server:port/mountpoint</tt><fontsize=3>For example:</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Mandatory. ) This element has two different meanings, depending on whether reencoding is enabled or<br>
<spanstyle=" text-indent: 0.4500in;"></span>not. It specifies the <fontsize=3><I>output format</I><fontsize=3>of the stream if reencoding is enabled. Otherwise, it specifies the <fontsize=3><I>input<br>
<spanstyle=" text-indent: 0.4500in;"></span>format</I><fontsize=3>of <fontsize=3><B>all</B><fontsize=3>input files. Recognized and supported values are <fontsize=3><B>VORBIS</B><fontsize=3>, <fontsize=3><B>MP3</B><fontsize=3>and <fontsize=3><B>THEORA</B><fontsize=3>. Other val-<br>
<spanstyle=" text-indent: 0.4500in;"></span>ues will be ignored and cause <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>to simply pass through the data, which may or may not work.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Mandatory. ) Set the path and name of a single media file, a playlist, the name of an external program<br>
<spanstyle=" text-indent: 0.4700in;"></span>( see below ) , or the keyword <fontsize=3><tt>stdin</tt><fontsize=3>for streaming from standard input. Playlists are recognized by their<br>
<spanstyle=" text-indent: 0.4500in;"></span>filename extension and end with either <fontsize=3><I>.m3u</I><fontsize=3>or <fontsize=3><I>.txt</I><fontsize=3>.</p>
<p><spanstyle=" text-indent: 0.4500in;"></span><fontsize=3>A playlist consists of filenames, one entry per line. Comments in playlists are introduced by a `<fontsize=3><tt>#</tt><fontsize=3>' sign at<br>
<spanstyle=" text-indent: 0.4500in;"></span>the beginning of a line and ignored by <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set to <fontsize=3><B>1</B><fontsize=3>( one ) to indicate that the file in <filename/> is actually an executable program or<br>
<spanstyle=" text-indent: 0.4500in;"></span>script. This program is supposed to print ( to standard output ) one line with the name of a file that should<br>
<spanstyle=" text-indent: 0.4500in;"></span>be streamed next and then exit.</p>
<p><spanstyle=" text-indent: 0.4500in;"></span><fontsize=3>If set to <fontsize=3><B>0</B><fontsize=3>( zero ) , <filename/> content is assumed to be a media file, playlist file or the keyword <fontsize=3><tt>stdin<br>
<spanstyle=" text-indent: 0.4700in;"></span></tt>( the default ) .</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set to <fontsize=3><B>1</B><fontsize=3>( one ) to randomly shuffle the entries of the playlist specified in <filename/>. Files<br>
<spanstyle=" text-indent: 0.4500in;"></span>are played sequentially if set to <fontsize=3><B>0</B><fontsize=3>( zero ) or when the <shuffle/> element is absent. This option will be ig-<br>
<spanstyle=" text-indent: 0.4500in;"></span>nored if <playlist_program/> is set to 1 ( one. )</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Set to <fontsize=3><B>1</B><fontsize=3>( one ) to stream <filename/> content only once, and to <fontsize=3><B>0</B><fontsize=3>( zero ) for continuous streaming ( the<br>
<spanstyle=" text-indent: 0.4500in;"></span></B>Set how many attempts should be made to reconnect to the Icecast server in case the connection is inter-<br>
<spanstyle=" text-indent: 0.4500in;"></span>rupted. The default is to try indefinitely, which is equal to setting this configuration option to <fontsize=3><B>0</B><fontsize=3>( zero ) .</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set the description of</p>
</td>
<tdvalign="top"align="left"width="1.0000%">
</td>
<tdvalign="top"align="left"width="41.3846%">
<p><fontsize=3>OpenBSD Reference Manual</p>
<p><fontsize=3>the broadcast. Informational only, used for YP.</p>
</td>
<tdvalign="top"align="left"width="6.3077%">
</td>
<tdvalign="top"align="left"width="15.2308%">
<p><fontsize=3>EZSTREAM ( 1 )</p>
</td>
</tr>
<trvalign="top"align="left">
<tdvalign="top"align="left"width="29.6923%">
<p><fontsize=3><B><svrinfobitrate /></p>
</B></td>
<tdvalign="top"align="left"width="1.0000%">
</td>
<tdvalign="top"align="left"width="41.3846%">
</td>
<tdvalign="top"align="left"width="6.3077%">
</td>
<tdvalign="top"align="left"width="15.2308%">
</td>
</tr>
</table>
<p><fontsize=3>( Optional. ) Set the bitrate of the broadcast. This setting is also purely informational and only used for YP.<br>
<spanstyle=" text-indent: 0.4500in;"></span>The value is set by the user and not <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>, and should match the bitrate of the stream.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set the quality setting of an Ogg Vorbis broadcast. Informational only and needs to be set by<br>
<spanstyle=" text-indent: 0.4500in;"></span>the user, used for YP.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set the number of audio channels in the broadcast, e.g. <fontsize=3><B>1</B><fontsize=3>( one ) for mono or <fontsize=3><B>2</B><fontsize=3>for stereo. In-<br>
<spanstyle=" text-indent: 0.4500in;"></span>formational only and needs to be set by the user, used for YP.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set the sample rate of the broadcast. Informational only and needs to be set by the user, used<br>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Set to <fontsize=3><B>1</B><fontsize=3>( one ) if the broadcast may be listed in a public YP directory. If set to <fontsize=3><B>0</B><fontsize=3>( zero ) , the<br>
<spanstyle=" text-indent: 0.4500in;"></span>Icecast server will not submit this stream to a YP directory, which is also the default if the <svrinfopublic/><br>
<spanstyle=" text-indent: 0.4500in;"></span>element is absent.</p>
<spanstyle=" text-indent: 0.4700in;"></span></B>( Optional. ) Element that contains child elements, which specify if and how reencoding should be done.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Set to <fontsize=3><B>1</B><fontsize=3>( one ) to enable reencoding. If set to <fontsize=3><B>0</B><fontsize=3>( zero ) , no reencoding will be done, which is also the de-<br>
<spanstyle=" text-indent: 0.4500in;"></span>fault if the <enable/> element is absent.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Element that contains child elements, which specify how to decode and encode a certain media file format<br>
<spanstyle=" text-indent: 0.4500in;"></span>for streaming. Each format is described by a separate <encdec/> element.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Each of the decoder/encoder configuration elements have the <encdec/> element as their parent.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>This element is used by <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>to find the appropriate encoder for the output stream format specified<br>
<spanstyle=" text-indent: 0.4500in;"></span>in the <format/> element inside the global configuration. It is recommended that this element is always<br>
<spanstyle=" text-indent: 0.4500in;"></span>supplied, even for currently unsupported output formats, with content such as <fontsize=3><B>VORBIS</B><fontsize=3>, <fontsize=3><B>MP3</B><fontsize=3>, <fontsize=3><B>THEORA</B><fontsize=3>,<br>
<spanstyle=" text-indent: 0.4500in;"></span><B>FLAC</B><fontsize=3>, et cetera.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Set the filename extension used to identify a given media file format. This allows <fontsize=3><tt><B>ezstream</tt></B><fontsize=3>to find the<br>
<spanstyle=" text-indent: 0.4500in;"></span>appropriate decoder for a given file. Should be set to <fontsize=3><I>.mp3</I><fontsize=3>for MP3, <fontsize=3><I>.flac</I><fontsize=3>for FLAC, <fontsize=3><I>.ogg</I><fontsize=3>for Ogg Vorbis,<br>
<spanstyle=" text-indent: 0.4500in;"></span>and so on.</p>
<spanstyle=" text-indent: 0.4500in;"></span></B>Set the command to decode the specified media file format to raw data and send it to standard output.<br>
<spanstyle=" text-indent: 0.4500in;"></span>During runtime, the placeholder `<fontsize=3><tt>@T@</tt><fontsize=3>' is replaced with the fully qualified name of the media file, as speci-<br>
<spanstyle=" text-indent: 0.4500in;"></span>fied in the <filename/> element or a playlist file. It should always be enclosed in quotes, to prevent prob-<br>
<spanstyle=" text-indent: 0.4500in;"></span>lems with filenames that contain whitespaces.</p>
<p><fontsize=3>OpenBSD 4.1 February 20, 2007 3<br>
<p><spanstyle=" text-indent: 0.4500in;"></span><fontsize=3>The metadata placeholder, `@M@', is also available in the <decode/> element. That way it can be used<br>
<spanstyle=" text-indent: 0.4500in;"></span>for combined de-/encoder programs that produce readily streamable data.</p>
</B>Set the command to encode raw data, received from standard input, to the specified stream format. Dur- ing runtime, the placeholder `<fontsize=3><tt>@M@</tt><fontsize=3>' is replaced with the metadata (e.g. ``Artist - Title'') for the current track. It also should be enclosed in quotes at all times.</p>
<p><fontsize=3>For example, to encode an Ogg Vorbis stream using the quality setting 1.5 with the <fontsize=3><tt><B>oggenc</tt></B><fontsize=3>utility:</p>
<aname="FILES"></a><h2>FILES</h2><p><spanstyle=" text-indent: 0.4500in;"></span><fontsize=3><tt>\conf</tt><fontsize=3>Directory containing example configuration files for various uses of<br>