<page xmlns="http://projectmallard.org/1.0/"
type="guide"
id="xiph">
<info>
<link type="guide" xref="index#channels"/>
<link type="guide" xref="channels#list"/>
<link type="guide" xref="configuration#plugins"/>
<desc>ICEcast radio directory.</desc>
</info>
<title><media type="image" src="img/channel_xiph.png" /> Xiph.org</title>
<subtitle><link href="http://dir.xiph.org/">//dir.xiph.org/</link></subtitle>
<p>Xiph.org is a non-profit organization which develops and maintains
various audio- and video-related standards.</p>
<list>
<item><p>For example the OGG streaming/multiplexing format.</p></item>
<item><p>Audio compression schemes like Vorbis, Speex, FLAC, Opus.</p></item>
<item><p>Video encoding formats like Theora, Tarkin, Dirac.</p></item>
<item><p>The ICEcast streaming server is an alternative to SHOUTcast.</p></item>
<item><p>And the more modern .xspf (and .jspf) playlist format, which is used by all channel entries.</p></item>
</list>
<p>There are different ways for streamtuner2 to retrieve the station
lists available on dir.xiph.org. That's because this is a primary
plugin, and fallback solutions therefore important. Each fetching
mode has its own advantages and drawbacks though.</p>
<section id="options">
<title>Channel fetch mode option</title>
<p>There are now three options to retrieve Xiph directory stations.</p>
<terms>
<item>
<title><code>Cache JSON</code></title>
<p>There's a caching server specifically for streamtuner2. It fixes
Xiphs quirky JSON API, and provides a simpler interface. It can't
correct the invalid encodings however, which is why you see ????
question marks a lot. This method does not reveal station homepages,
but enables the channel/server search.</p>
</item>
<item>
<title><code>Clunky YP.XML</code></title>
<p>The "yellow pages" YP.XML contains the full list of all known
ICEcast streaming servers. It's however quite bulky and super slow
to download. It furthermore clogs up a lot of memory, and requires
manual searching (only cache search works). Which is why streamtuner2
is trying hard to avoid it. It doesn't contain station homepages either.
</p>
<p>It's only still an option, because it's likely to remain accessible
after Xiph.org rewrites their directory service. (Which though is
getting delayed since a few years already.)
You can set the special "buffy" mode in your <file>settings.json</file>
to keep the whole YP.XML in memory. Which avoids the
slow station list download/unpacking.
</p>
</item>
<item>
<title><code>Forbidden fruits</code></title>
<p>As new alternative, you can let ST2 directly scrape the station
lists from dir.xiph.org (like it does for other channels). This is
something which Xiph doesn't approve of. But the drawbacks of their
alternative offerings are too severe and user-unfriendly; which is
why there's this raw HTML extraction mode now.</p>
<p>Ass of May 2020 the website listings don't contain station homepages
anymore either. So, the accessibility advantage is gone. However,
stations now list the raw streaming server url now. And extraction
is comparatively faster still.</p>
<note><p>A miximum of 100 entries get fetched in this mode however
(which is 5 pages à 20 entries).</p></note>
</item>
</terms>
<p>The filter-by-bitrate option is now a generic plugin.</p>
</section>
</page>