Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ branch:  streamtuner2


Check-in [04648f1c1c]

Overview
Comment:Documentation typos fixed and itemized more config options for some plugins.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 04648f1c1c5242043c5d3fc81585c1bf8062c313
User & Date: mario on 2020-05-16 10:07:20
Other Links: manifest | tags
Context
2020-05-16
10:08
Minor Python 3 fixes (syntax and str.decode) check-in: 3d48a4ac68 user: mario tags: trunk
10:07
Documentation typos fixed and itemized more config options for some plugins. check-in: 04648f1c1c user: mario tags: trunk
2020-05-15
19:36
Apply more `self.status(i / pages)` progressbar calls for some channels. check-in: e9c2e9a3a2 user: mario tags: trunk
Changes

Modified Makefile from [0488466410] to [c2ba8c4a3c].

93
94
95
96
97
98
99

93
94
95
96
97
98
99
100







+
st2: run
run:
	#MALLOC_CHECK_=2 PYTHONVERBOSE=2
	python -B  ./st2.py -D  -e dev_faulthandler

yelp:
	yelp help/index.page 2>/dev/null &
	(cd help/html ; yelp-build html ..)

Modified help/channel_bookmarks.page from [b8f52ac3e6] to [d38657e99e].

38
39
40
41
42
43
44
45
46



47
48
49
38
39
40
41
42
43
44


45
46
47
48
49
50







-
-
+
+
+



	</section>

	<section id="other">
	<title>Subcategories</title>
	<p>The bookmarks tab can display other categories besides "favourite". For example the
	search feature creates a "search", while the "timer" and "links" plugins also display
	lists here.</p>
	<note style="bug"><p>However the favourite list itself can not yet be categorized
	further.</p></note>
	<note style="bug"><p>There's a <link xref="contrib_features#new_favourite">feature plugin</link>
        to provide for favourite subcategories. You'd usually move items there per <link
	xref="dragndrop">drag'n'drop</link>. It's somewhat of a workaround, however.</p></note>
	</section>

</page>

Modified help/channel_liveradio.page from [7fc18bef52] to [f6abd80668].

18
19
20
21
22
23
24
25
26
27
28
29
30




















31
32
33
34
18
19
20
21
22
23
24






25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48







-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+





<p>It doesn't have an API in itself, but utilizes HTML5 microdata. And
the station logos are utilized directly in ST2 as favicons.</p>


<section id="options">
 <title>Configuration</title>

 <p> There's an option for querying LiveRadio.UK instead. This requires
 a Streamtuner2 restart however, and might not be reflected in the UI. </p>
 
 <p> Responds to the PyQuery (instead of regex) parsing main option. </p>
 <p> Per default fetches 10 pages at once. </p>
  <terms>
  <item>
    <title><code>🔠 Website to fetch from</code></title>
    <p> This option allows for querying LiveRadio.UK instead. This requires
    a Streamtuner2 restart however, and might not be reflected in the
    channel tabs (though is in the toolbar link). </p>
  </item>
  <item>
    <title>✕ Missing options</title>
    <p> Future version might allow to set a language filter. Currently
    there's too little content to warrant it. </p>
  </item>
  <item>
    <title>❏ General options</title>
    <p> Responds to the PyQuery (instead of regex) parsing main option. </p>
    <p> Per default fetches 10 pages at once. </p>
  </item>
  </terms>

 

</section>

</page>

Modified help/channel_peertube.page from [337c949d22] to [ecc0a69cd7].

9
10
11
12
13
14
15
16
17


18
19
20

21
22
23
24
25
26
27
28

29
30
31
32
33
34
35
36

37
38
39






40
41
42
43
44
9
10
11
12
13
14
15


16
17
18
19

20
21
22
23
24
25
26
27

28
29
30
31
32
33
34
35

36
37
38

39
40
41
42
43
44
45
46
47
48
49







-
-
+
+


-
+







-
+







-
+


-
+
+
+
+
+
+





        <desc>Peertube music/video listings.</desc>
</info>

	<title><media type="image" src="img/channel_peertube.png" /> Peertube</title>
	<subtitle><link	href="http://joinpeertube.org/">//joinpeertube.org/</link></subtitle>

	<p>PeerTube is a federated video hosting network. And this channel
	allows you to browse /Music and other categories. It's not quite a
	very rich ecosystem yet, but very international. So perhaps worth a
	allows you to browse /Music and other categories. It's not a very
	broad video ecosystem yet, but fairly international. So perhaps worth a
	lookaround.</p>

        <p>The category list seeems to be uniform across most Peertube
        <p>The category list seems to be uniform across most Peertube
	instances. So you only need to reload stations/videos once switching
	the address in the settings. </p>

        <p>Per default you should use VLC and 
        <link href="http://youtube-dl.org/">youtube-dl</link> in the
	playback settings. Per default the faux mime type <cmd>video/youtube</cmd>
	is used for all listings. However, internally there's a lookup for
	an .m3u or direct .mp4 link already. So the <cmd>video/*</cmd> entry should
	a .m3u or direct .mp4 link already. So the <cmd>video/*</cmd> entry should
	also be populated.</p>

        <section id="options">
          <title>Channel options.</title>
          <terms>
          <item>
            <title><code>🔠 Peertube server</code></title>
            <p>Sets the main isntance to query video listings from. Now most
            <p>Sets the main instance to query video listings from. Now most
	    of the other sites will be peered, so the main server doesn't
	    have that much influence. It changes the ordering however, and
            will reveal more local videos or languages often.</p>
            will reveal more local videos or languages usually.</p>
          </item>
          <item>
            <title>✕ Missing options</title>
            <p>Future plugin versions might offer a language filter option.
            Currently there's not enough content to warrant it.</p>
          </item>
          </terms>
        </section>

</page>

Modified help/channel_radiobrowser.page from [49966b90a2] to [8809a1c4fc].

30
31
32
33
34
35
36
37
38
39





40
41
42
43
44
45
46
47
48
49
50
51
52

















53
54
55
56
57
58
59
60
61
62
30
31
32
33
34
35
36



37
38
39
40
41













42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68







-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+











<p>Since v0.3 (in streamtuner2 2.2.0) you can now also share your favorite
stations directly. There's a new <guiseq><gui>context menu</gui> <gui>Share in
Radio-Browser</gui></guiseq>.</p>

<section id="options">
 <title>Configuration</title>
 
 <p> Instead of browsing by genres, you can switch to languages or
 countries.</p>
  <terms>
  <item>
    <title><code>🔠 Which category types to list</code></title>
    <p> Instead of browsing by genres, you can switch to languages or
    countries.</p>

 <p> Note that you'll have to use <guiseq><gui>Channel</gui> <gui>Reload Category Tree (F5)</gui></guiseq>
 again to update the category view.</p>

 <p> The API server option lets you predefine a more local cache to be used
 for station list queries.</p>

 <p> And "Minimum stations to list a category" can be used to filter out
 fringe/sparsely populated genres - on using <guiseq><gui>Channel</gui>
 <gui>Reload Category Tree (F5)</gui></guiseq>. Typically 15 should be okay,
 or 150 if you want to see only major categories. Else the category list
 would become around a thousand entries.</p>

    <p> Note that you'll have to use <guiseq><gui>Channel</gui> <gui>Reload Category Tree (F5)</gui></guiseq>
    again to update the category view.</p>
  </item>
  <item>
    <title><code>🔠 API server to utilize</code></title>
    <p> The API server option lets you predefine a more local cache to be used
    for station list queries.</p>
  </item>
  <item>
    <title><code>🔟 Minimum stations to list a category</code></title>
    <p> This option can be used to filter out fringe/sparsely populated
    genres. Use <guiseq><gui>Channel</gui>  <gui>Reload Category Tree (F5)</gui></guiseq>
    to apply it to the genre list.</p>
    <p> Typically 15 should be okay, or 150 if you want to see only major categories.
    Else the category list would become crowded with around a thousand entries.</p>
  </item>
  </terms>
</section>

<section id="advertisment">
 <note style="note"><p> With <link  href="https://play.google.com/store/apps/details?id=net.programmierecke.radiodroid2">RadioDroid</link>
 there's a mobile version to access and play from radio-browser.info
 directly. Get it on <link  href="https://f-droid.org/forums/topic/radiodroid/">F-Droid</link>
 or the Play store.</p></note>
</section>

</page>

Modified help/channel_radionomy.page from [e731fe2c26] to [337f10d6eb].

34
35
36
37
38
39
40
41

42
43
44
45
46
47
48
49
50
34
35
36
37
38
39
40

41
42
43
44
45
46
47
48
49
50







-
+









 <list>
 <item>
  <title>🔟 Number of pages</title>
  <p> You can configure the number of pages it'll try (<key>3</key> by
  default) to influence the length of station lists.</p>
 </item>
 <item>
  <title> OnAir updates</title>
  <title>🔰 OnAir updates</title>
  <p> And the song title updating can be disabled (for speedier loading).
  Future versions of this channel plugin might poll it automatically,
  and keep the station list auto-updated.</p>
 </item>
 </list>

</section>

</page>

Modified help/channel_somafm.page from [b9e858d0a3] to [b9b5db5403].

15
16
17
18
19
20
21


22

23
24
25
26
27
28
29
30




31
32
15
16
17
18
19
20
21
22
23

24
25
26
27
28
29
30
31

32
33
34
35
36
37







+
+
-
+







-
+
+
+
+


	<p>SomaFM is a small radio station network. It provides its own
	unique channels. Which streamtuner2 shows in a static list.</p>

        <note><p>SomaFM is a non-commercial and ad-free provider. It
        strongly depends on listener donations.</p></note>

        <section id="configuration">	
        <terms>
        <item>
        <title>Bitrate configuration</title>
        <title>🔟 Bitrate configuration</title>

	<p>It provides streaming links in different audio formats. Only
	AAC64 is guaranteed to be available for all. Other bitrates depend
	on the station.</p>

	<p>After reconfiguring the bitrate/format, you can <link
	xref="reloading">Reload</link> the station list to update them. 
	Otherwise refreshing has no effect.</p> </section>
	Otherwise refreshing has no effect.</p>
        </item>
        </terms>
	</section>

</page>

Modified help/channel_tunein.page from [fe8250b71b] to [646aec99bc].

14
15
16
17
18
19
20



21
22
23
24


25
26
27
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32







+
+
+




+
+




	<p>TuneIn hosts a major radio, show and podcast directory. It also provides the
        RadioTime/AIR interface for listener feedback or something. ST2 queries the OPML
        lists only for radio stations currently.</p>
        
        <section id="options">
        <title>Configuration</title>
	<terms>
	<item>
	<title><code>🔠 Categories </code></title>
        <p>You can switch between "music" and "genres" list. The genres
        list is basically a longer and expanded variant of "music".
        Use <guiseq><gui>Channel</gui> <gui>Reload category tree</gui></guiseq>
        to update them thereafter.</p>
	</item>
	</terms>
        </section>

</page>

Modified help/channel_xiph.page from [d7a8ba8e30] to [f5d626f9ea].

59
60
61
62
63
64
65
66
67
68
69




70
71
72
73
74
75
76
77
59
60
61
62
63
64
65




66
67
68
69
70
71
72
73
74
75
76
77







-
-
-
-
+
+
+
+








  <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>The website listings contain full station homepages and a few
    more extras.  In this mode we can even acceess the XSPF playlist
    formats directly.  Both, the server search function, or browsing by
    audio/video format are supported.  </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>

Modified help/channel_youtube.page from [e1c1cffda7] to [2b05093739].

13
14
15
16
17
18
19
20
21


22
23
24


25
26
27
28
29
30
31
13
14
15
16
17
18
19


20
21
22


23
24
25
26
27
28
29
30
31







-
-
+
+

-
-
+
+







	<subtitle><link	href="http://youtube.com/">//youtube.com/</link></subtitle>

        <note style="bug"><p>This plugin is no longer supported or a default
	channel. Due to exceeded quotas, it ceased working, and Youtube/Google
	bothered me with inane requests for video recordings of how ST2 works
	(instead of simply looking at the code or investigating their own logs).
	Btw, the exceeded quota was unlikely due to regular ST2 usage. It's
	more probable the builtin and plainly-in-sight builtin API key was
	reappropriated otherwise. Hence, you would have to
	more probable the builtin and plain-in-sight API key was reappropriated
        otherwise. Hence, you would now have to
        <link href="https://developers.google.com/youtube/v3/getting-started">get
	your own key</link> now, if you wanted to use this channel. Btw,
	overall it's not that interesting / worth the effort IMO.</p></note>
	your own key</link>, if you wanted to use this channel. Overall this
	channel is not that interesting / worth the effort IMO.</p></note>

	<p>Googles Youtube provides a quirky JSON API that makes browsing
        channels and genres feasible.  This beta plugin provides a little
        overview, and usually retrieves recent video uploads.</p>

        <p>VLC can directly play Youtube URLs. For other players one can use
        <link href="http://youtube-dl.org/">youtube-dl</link> as wrapper.

Modified help/configuration.page from [a9125eff38] to [ac2082d300].

56
57
58
59
60
61
62
63
64
65
66






67
68
69
70
71
72
73
56
57
58
59
60
61
62




63
64
65
66
67
68
69
70
71
72
73
74
75







-
-
-
-
+
+
+
+
+
+








    <p><media type="image" src="img/configapps.png" mime="image/png" /></p>

    <list>
      <item><p><link xref="config_apps">Application names</link> are most
      always lowercase binary names.</p></item>
      
      <item><p> Double click an entry to edit it. After editing, the icon
      next to the application name will be updated.  If it stays green, it's
      likely to work.  If it turns red / into a stop symbol, then the
      entered name is likely incorrect. (Only works on U*ix-systems.)</p></item>
      <item><p> Double click an entry to edit it. Press <key>ENTER</key> to
      have the new value applied.</p>
      <p>After editing, the icon next to the application name will be
      updated.  If it stays green, it's likely to work.  If it turns red /
      into a stop symbol, then the entered name is likely incorrect.  (Only
      works on U*ix-systems.)</p></item>

      <item><p>After the application name, you can optionally use
      <link xref="config_apps#placeholders">a placeholder</link>:</p>
        <list>
        <item><p><var>%pls</var> → default format</p></item>
        <item><p><var>%m3u</var> → older scheme</p></item>
        <item><p><var>%xspf</var> → modern playlists,</p></item>

Modified help/contrib_features.page from [1559a77213] to [1bc999aeca].

230
231
232
233
234
235
236
237

238
239
240
241
242
243
244








245
246
247
248
230
231
232
233
234
235
236

237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256







-
+







+
+
+
+
+
+
+
+




    <subtitle>🔌 OGG Icon</subtitle>
    <p>Introduces small state icons to make higher-quality Vorbis and
    Opus stations stand out. (Not all channels provide exact format
    information, so you'll mostly notice for Jamendo and Xiph.) </p>
  </section>

  <section>
    <subtitle>🔌  Win32/subprocess</subtitle>
    <subtitle>🔌 Win32/subprocess</subtitle>
    <p>Wraps the player/application exec() method. Instead of simple
    shell execution, uses the Python subprocess module or win32 API
    functions. This is mostly unneeded on Linux (kills a few features
    even), but avoids the cmd.exe popup and delay on Windows. Highly
    experimental at the moment.</p>
  </section>

  <section id="new_favourite">
    <subtitle>🔌 New favourite category </subtitle>
    <p>Adds a "New favourite category..." under Station > Extensions menu,
    and context menu options to copy station entries there. DND from
    other channels works, if you preselect the new subcategory beforehand.
    It's an afterthought/workaround for those who insist on using ST2 for
    stream management.</p>
  </section>
</section>


</page>

Modified help/html/bookmarks.html from [049dbe6bb7] to [1413dfd739].

56
57
58
59
60
61
62
63
64


65
66
67
68
69
70
71
56
57
58
59
60
61
62


63
64
65
66
67
68
69
70
71







-
-
+
+







 <path class="yelp-svg-fill" d="m12 3a4 4 0 0 0-4 4h8a4 4 0 0 0-4-4z"></path>
 <path class="yelp-svg-fill" d="m16 12h6v1h-6z"></path>
 <path class="yelp-svg-fill" transform="rotate(-30)" d="m9.2045 16.361h6v1h-6z"></path>
 <path class="yelp-svg-fill" transform="rotate(30)" d="m21.704 4.2894h6v1h-6z"></path>
 <path class="yelp-svg-fill" d="m2 12h6v1h-6z"></path>
 <path class="yelp-svg-fill" transform="rotate(30)" d="m5.5801 4.3612h6v1h-6z"></path>
 <path class="yelp-svg-fill" transform="rotate(-30)" d="m-6.9199 16.289h6v1h-6z"></path>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">However the favourite list itself can not yet be categorized
	further.</p></div></div></div>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">There's a <span class="link"><a href="contrib_features.html#new_favourite" title="contrib_features#new_favourite">feature plugin</a></span>
        to provide for favourite subcategories. You'd usually move items there per <span class="link"><a href="dragndrop.html" title="Drag'n'drop">drag'n'drop</a></span>. It's somewhat of a workaround, however.</p></div></div></div>
</div>
<div class="links topiclinks"><div class="inner"><div class="region"><div class="links-divs">
<div class="linkdiv "><a class="linkdiv" href="search.html" title="Searching"><span class="title">Searching</span><span class="linkdiv-dash"> — </span><span class="desc">Quicksearch field and Ctrl+F compound search window.</span></a></div>
<div class="linkdiv "><a class="linkdiv" href="timer.html" title="Timer"><span class="title">Timer</span><span class="linkdiv-dash"> — </span><span class="desc">Programming recurring play and recording events.</span></a></div>
</div></div></div></div>
</div></div>
</div></section><section class="links" role="navigation"><div class="inner">

Modified help/html/configuration.html from [ce7ea5b02c] to [5b3d7672be].

53
54
55
56
57
58
59

60
61
62
63







64
65
66
67
68
69
70
53
54
55
56
57
58
59
60




61
62
63
64
65
66
67
68
69
70
71
72
73
74







+
-
-
-
-
+
+
+
+
+
+
+







<p class="p">MIME types are abstract identifiers for media types. <span class="var">Audio/mpeg</span> for
    example represents MP3 files, and <span class="var">audio/ogg</span> means OGG Vorbis.  And the player
    setting dialog simply associates an audio type with a playback application:</p>
<p class="p"><span class="media"><span class="media media-image"><img src="img/configapps.png" class="media media-inline" alt=""></span></span></p>
<div class="list"><div class="inner"><div class="region"><ul class="list">
<li class="list"><p class="p"><span class="link"><a href="config_apps.html" title="Audio players">Application names</a></span> are most
      always lowercase binary names.</p></li>
<li class="list">
<li class="list"><p class="p"> Double click an entry to edit it. After editing, the icon
      next to the application name will be updated.  If it stays green, it's
      likely to work.  If it turns red / into a stop symbol, then the
      entered name is likely incorrect. (Only works on U*ix-systems.)</p></li>
<p class="p"> Double click an entry to edit it. Press <span class="key"><kbd>ENTER</kbd></span> to
      have the new value applied.</p>
<p class="p">After editing, the icon next to the application name will be
      updated.  If it stays green, it's likely to work.  If it turns red /
      into a stop symbol, then the entered name is likely incorrect.  (Only
      works on U*ix-systems.)</p>
</li>
<li class="list">
<p class="p">After the application name, you can optionally use
      <span class="link"><a href="config_apps.html#placeholders" title="URL placeholders">a placeholder</a></span>:</p>
<div class="list"><div class="inner"><div class="region"><ul class="list">
<li class="list"><p class="p"><span class="var">%pls</span> → default format</p></li>
<li class="list"><p class="p"><span class="var">%m3u</span> → older scheme</p></li>
<li class="list"><p class="p"><span class="var">%xspf</span> → modern playlists,</p></li>

Modified help/html/contrib_features.html from [f9342377b0] to [6a8820e89c].

241
242
243
244
245
246
247
248

249
250
251
252
253







254
255
256
257
258
259
260
241
242
243
244
245
246
247

248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267







-
+





+
+
+
+
+
+
+







    the reset button.</p></div></div>
</div></section><section id=""><div class="inner">
<div class="hgroup pagewide"><h4 class="subtitle"><span class="subtitle">🔌 OGG Icon</span></h4></div>
<div class="region"><div class="contents pagewide"><p class="p">Introduces small state icons to make higher-quality Vorbis and
    Opus stations stand out. (Not all channels provide exact format
    information, so you'll mostly notice for Jamendo and Xiph.) </p></div></div>
</div></section><section id=""><div class="inner">
<div class="hgroup pagewide"><h4 class="subtitle"><span class="subtitle">🔌  Win32/subprocess</span></h4></div>
<div class="hgroup pagewide"><h4 class="subtitle"><span class="subtitle">🔌 Win32/subprocess</span></h4></div>
<div class="region"><div class="contents pagewide"><p class="p">Wraps the player/application exec() method. Instead of simple
    shell execution, uses the Python subprocess module or win32 API
    functions. This is mostly unneeded on Linux (kills a few features
    even), but avoids the cmd.exe popup and delay on Windows. Highly
    experimental at the moment.</p></div></div>
</div></section><section id="new_favourite"><div class="inner">
<div class="hgroup pagewide"><h4 class="subtitle"><span class="subtitle">🔌 New favourite category </span></h4></div>
<div class="region"><div class="contents pagewide"><p class="p">Adds a "New favourite category..." under Station &gt; Extensions menu,
    and context menu options to copy station entries there. DND from
    other channels works, if you preselect the new subcategory beforehand.
    It's an afterthought/workaround for those who insist on using ST2 for
    stream management.</p></div></div>
</div></section>
</div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul>

Modified help/html/liveradio.html from [e6449ef24c] to [c5841d0c91].

31
32
33
34
35
36
37
38
39
40










41
42

43

44
45
46
47
48
49
50
31
32
33
34
35
36
37



38
39
40
41
42
43
44
45
46
47
48
49
50

51
52
53
54
55
56
57
58







-
-
-
+
+
+
+
+
+
+
+
+
+


+
-
+







going pretty strong with over 4500 entries and a neat UI. It obviously also
lists international stations. </p>
<p class="p">It doesn't have an API in itself, but utilizes HTML5 microdata. And
the station logos are utilized directly in ST2 as favicons.</p>
</div>
<section id="options"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Configuration</span></h2></div>
<div class="region"><div class="contents pagewide">
<p class="p"> There's an option for querying LiveRadio.UK instead. This requires
 a Streamtuner2 restart however, and might not be reflected in the UI. </p>
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="code">🔠 Website to fetch from</span></dt>
<dd class="terms"><p class="p"> This option allows for querying LiveRadio.UK instead. This requires
    a Streamtuner2 restart however, and might not be reflected in the
    channel tabs (though is in the toolbar link). </p></dd>
<dt class="terms">✕ Missing options</dt>
<dd class="terms"><p class="p"> Future version might allow to set a language filter. Currently
    there's too little content to warrant it. </p></dd>
<dt class="terms">❏ General options</dt>
<dd class="terms">
<p class="p"> Responds to the PyQuery (instead of regex) parsing main option. </p>
<p class="p"> Per default fetches 10 pages at once. </p>
</dd>
</div></div>
</dl></div></div></div></div></div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul>
<li class="links "><a href="channels.html#list" title="Available channels">Available channels</a></li>
<li class="links "><a href="configuration.html#plugins" title="Channel and feature plugins and settings">Channel and feature plugins and settings</a></li>

Modified help/html/peertube.html from [95e03cd09d] to [7b8fed285f].

24
25
26
27
28
29
30
31
32


33
34

35
36
37
38
39
40
41

42
43
44
45
46
47
48

49
50
51




52
53
54
55
56
57
58
24
25
26
27
28
29
30


31
32
33

34
35
36
37
38
39
40

41
42
43
44
45
46
47

48
49
50

51
52
53
54
55
56
57
58
59
60
61







-
-
+
+

-
+






-
+






-
+


-
+
+
+
+







</div></div></header><article><div class="hgroup pagewide">
<h1 class="title"><span class="title"><span class="media"><span class="media media-image"><img src="img/channel_peertube.png" class="media media-inline" alt=""></span></span> Peertube</span></h1>
<h2 class="subtitle"><span class="subtitle"><span class="link"><a href="http://joinpeertube.org/" title="http://joinpeertube.org/">//joinpeertube.org/</a></span></span></h2>
</div>
<div class="region">
<div class="contents pagewide">
<p class="p">PeerTube is a federated video hosting network. And this channel
	allows you to browse /Music and other categories. It's not quite a
	very rich ecosystem yet, but very international. So perhaps worth a
	allows you to browse /Music and other categories. It's not a very
	broad video ecosystem yet, but fairly international. So perhaps worth a
	lookaround.</p>
<p class="p">The category list seeems to be uniform across most Peertube
<p class="p">The category list seems to be uniform across most Peertube
	instances. So you only need to reload stations/videos once switching
	the address in the settings. </p>
<p class="p">Per default you should use VLC and 
        <span class="link"><a href="http://youtube-dl.org/" title="http://youtube-dl.org/">youtube-dl</a></span> in the
	playback settings. Per default the faux mime type <span class="cmd">video/youtube</span>
	is used for all listings. However, internally there's a lookup for
	an .m3u or direct .mp4 link already. So the <span class="cmd">video/*</span> entry should
	a .m3u or direct .mp4 link already. So the <span class="cmd">video/*</span> entry should
	also be populated.</p>
</div>
<section id="options"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Channel options.</span></h2></div>
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="code">🔠 Peertube server</span></dt>
<dd class="terms"><p class="p">Sets the main isntance to query video listings from. Now most
<dd class="terms"><p class="p">Sets the main instance to query video listings from. Now most
	    of the other sites will be peered, so the main server doesn't
	    have that much influence. It changes the ordering however, and
            will reveal more local videos or languages often.</p></dd>
            will reveal more local videos or languages usually.</p></dd>
<dt class="terms">✕ Missing options</dt>
<dd class="terms"><p class="p">Future plugin versions might offer a language filter option.
            Currently there's not enough content to warrant it.</p></dd>
</dl></div></div></div></div></div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul>
<li class="links "><a href="channels.html#list" title="Available channels">Available channels</a></li>

Modified help/html/radiobrowser.html from [b4b43078ae] to [71c000a576].

42
43
44
45
46
47
48
49



50
51

52
53
54
55
56
57
58
59
60














61
62
63
64
65
66
67
42
43
44
45
46
47
48

49
50
51
52

53
54








55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75







-
+
+
+

-
+

-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+







</ul></div></div></div>
<p class="p">Since v0.3 (in streamtuner2 2.2.0) you can now also share your favorite
stations directly. There's a new <span class="guiseq"><span class="gui">context menu</span> ▸ <span class="gui">Share in
Radio-Browser</span></span>.</p>
</div>
<section id="options"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Configuration</span></h2></div>
<div class="region"><div class="contents pagewide">
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="code">🔠 Which category types to list</span></dt>
<dd class="terms">
<p class="p"> Instead of browsing by genres, you can switch to languages or
 countries.</p>
    countries.</p>
<p class="p"> Note that you'll have to use <span class="guiseq"><span class="gui">Channel</span> ▸ <span class="gui">Reload Category Tree (F5)</span></span>
 again to update the category view.</p>
<p class="p"> The API server option lets you predefine a more local cache to be used
 for station list queries.</p>
<p class="p"> And "Minimum stations to list a category" can be used to filter out
 fringe/sparsely populated genres - on using <span class="guiseq"><span class="gui">Channel</span> ▸ <span class="gui">Reload Category Tree (F5)</span></span>. Typically 15 should be okay,
 or 150 if you want to see only major categories. Else the category list
 would become around a thousand entries.</p>
</div></div>
    again to update the category view.</p>
</dd>
<dt class="terms"><span class="code">🔠 API server to utilize</span></dt>
<dd class="terms"><p class="p"> The API server option lets you predefine a more local cache to be used
    for station list queries.</p></dd>
<dt class="terms"><span class="code">🔟 Minimum stations to list a category</span></dt>
<dd class="terms">
<p class="p"> This option can be used to filter out fringe/sparsely populated
    genres. Use <span class="guiseq"><span class="gui">Channel</span> ▸ <span class="gui">Reload Category Tree (F5)</span></span>
    to apply it to the genre list.</p>
<p class="p"> Typically 15 should be okay, or 150 if you want to see only major categories.
    Else the category list would become crowded with around a thousand entries.</p>
</dd>
</dl></div></div></div></div></div>
</div></section><section id="advertisment"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="region"><div class="contents pagewide"><div class="note" title="Note">
<svg width="24" height="24" version="1.1">
 <path class="yelp-svg-fill" d="m4 3h16c0.554 0 1 0.446 1 1v11h-6v6h-11c-0.554 0-1-0.446-1-1v-16c0-0.554 0.446-1 1-1z"></path>
 <path class="yelp-svg-fill" d="m17 16h4l-5 5v-4c0-0.554 0.446-1 1-1z"></path>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p"> With <span class="link"><a href="https://play.google.com/store/apps/details?id=net.programmierecke.radiodroid2" title="https://play.google.com/store/apps/details?id=net.programmierecke.radiodroid2">RadioDroid</a></span>

Modified help/html/radionomy.html from [9208d61be7] to [c842189bc1].

45
46
47
48
49
50
51
52

53
54
55
56
57
58
59
45
46
47
48
49
50
51

52
53
54
55
56
57
58
59







-
+







<div class="region"><div class="contents pagewide"><div class="list"><div class="inner"><div class="region"><ul class="list">
<li class="list">
<div class="title title-item"><h3><span class="title">🔟 Number of pages</span></h3></div>
<p class="p"> You can configure the number of pages it'll try (<span class="key"><kbd>3</kbd></span> by
  default) to influence the length of station lists.</p>
</li>
<li class="list">
<div class="title title-item"><h3><span class="title"> OnAir updates</span></h3></div>
<div class="title title-item"><h3><span class="title">🔰 OnAir updates</span></h3></div>
<p class="p"> And the song title updating can be disabled (for speedier loading).
  Future versions of this channel plugin might poll it automatically,
  and keep the station list auto-updated.</p>
</li>
</ul></div></div></div></div></div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>

Modified help/html/reddit.html from [8fc7c18c7e] to [3fda0f1ed8].

69
70
71
72
73
74
75
76

77
78
79
80
81
82
83
69
70
71
72
73
74
75

76
77
78
79
80
81
82
83







-
+







<p class="p">There's a few options for the reddit plugin:</p>
<div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="code">🔟  Number of pages to fetch </span></dt>
<dd class="terms"><p class="p">Influences how many JSON requests are made to assemble a list of
    subreddit posts with playable content. (For this plugin that's
    configurable, because counting streams wouldn't work as reddit
    result lists vary wildly in their usable links.)</p></dd>
<dt class="terms"><span class="code"> Filter walled gardens </span></dt>
<dt class="terms"><span class="code">🔰 Filter walled gardens </span></dt>
<dd class="terms">
<p class="p">Many music posts on reddit meanwhile point to one of Soundcloud,
    Spotify, Bandcamp, Mixcloud. Those are basically just links you had
    open in your browser. --
    Now those are labeled "walled gardens" here, because they're hording
    user content behind a paywall/registration-wall, fiddly NIH APIs,
    non-standard audio formats, web-only players and sessioning.</p>
103
104
105
106
107
108
109
110

111
112
113
114
115
116
117
103
104
105
106
107
108
109

110
111
112
113
114
115
116
117







-
+







<td style="border-top-style: solid;"><p class="p"><span class="app">audio/mixcloud</span></p></td>
<td style="border-top-style: solid;border-left-style: solid;"><p class="p"><span class="cmd"><span class="link"><a href="https://rg3.github.io/youtube-dl/supportedsites.html" title="https://rg3.github.io/youtube-dl/supportedsites.html">vlc $(youtube-dl -g %srv)</a></span></span></p></td>
</tr>
</table></div></div></div>
<p class="p">Obviously you want to pipe <span class="cmd">youtube-dl</span> to an actual audio player
    again. VLC also supports a few services directly or via plugins.</p>
</dd>
<dt class="terms"><span class="code"> Keep all web links </span></dt>
<dt class="terms"><span class="code">💫 Keep all web links </span></dt>
<dd class="terms"><p class="p">Besides audio/video links, some subreddits link to album art or
    are just news feeds. Enable the "keep all" option to retain them.
    Such entries will open in your web browser instead of an audio player,
    of course.</p></dd>
</dl></div></div></div>
<div class="note" title="Note">
<svg width="24" height="24" version="1.1">

Modified help/html/somafm.html from [e2102a92fa] to [590486c48b].

34
35
36
37
38
39
40
41
42




43
44
45
46
47

48

49
50
51
52
53
54
55
34
35
36
37
38
39
40


41
42
43
44
45
46
47
48
49
50

51
52
53
54
55
56
57
58







-
-
+
+
+
+





+
-
+







 <path class="yelp-svg-fill" d="m4 3h16c0.554 0 1 0.446 1 1v11h-6v6h-11c-0.554 0-1-0.446-1-1v-16c0-0.554 0.446-1 1-1z"></path>
 <path class="yelp-svg-fill" d="m17 16h4l-5 5v-4c0-0.554 0.446-1 1-1z"></path>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">SomaFM is a non-commercial and ad-free provider. It
        strongly depends on listener donations.</p></div></div></div>
</div>
</div>
<section id="configuration"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Bitrate configuration</span></h2></div>
<div class="region"><div class="contents pagewide">
<div class="hgroup pagewide"></div>
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms">🔟 Bitrate configuration</dt>
<dd class="terms">
<p class="p">It provides streaming links in different audio formats. Only
	AAC64 is guaranteed to be available for all. Other bitrates depend
	on the station.</p>
<p class="p">After reconfiguring the bitrate/format, you can <span class="link"><a href="reloading.html" title="Reloading">Reload</a></span> the station list to update them. 
	Otherwise refreshing has no effect.</p>
</dd>
</div></div>
</dl></div></div></div></div></div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul>
<li class="links "><a href="channels.html#list" title="Available channels">Available channels</a></li>
<li class="links "><a href="configuration.html#plugins" title="Channel and feature plugins and settings">Channel and feature plugins and settings</a></li>

Modified help/html/tunein.html from [7bbb413fac] to [651954fbc2].

27
28
29
30
31
32
33


34

35
36
37


38
39
40
41
42
43
44
27
28
29
30
31
32
33
34
35

36
37
38

39
40
41
42
43
44
45
46
47







+
+
-
+


-
+
+







</div>
<div class="region">
<div class="contents pagewide"><p class="p">TuneIn hosts a major radio, show and podcast directory. It also provides the
        RadioTime/AIR interface for listener feedback or something. ST2 queries the OPML
        lists only for radio stations currently.</p></div>
<section id="options"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Configuration</span></h2></div>
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="code">🔠 Categories </span></dt>
<div class="region"><div class="contents pagewide"><p class="p">You can switch between "music" and "genres" list. The genres
<dd class="terms"><p class="p">You can switch between "music" and "genres" list. The genres
        list is basically a longer and expanded variant of "music".
        Use <span class="guiseq"><span class="gui">Channel</span> ▸ <span class="gui">Reload category tree</span></span>
        to update them thereafter.</p></div></div>
        to update them thereafter.</p></dd>
</dl></div></div></div></div></div>
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul>
<li class="links "><a href="channels.html#list" title="Available channels">Available channels</a></li>
<li class="links "><a href="configuration.html#plugins" title="Channel and feature plugins and settings">Channel and feature plugins and settings</a></li>

Modified help/html/xiph.html from [517e0e6e1a] to [4717c96a49].

71
72
73
74
75
76
77
78
79
80
81




82
83
84
85
86
87
88
71
72
73
74
75
76
77




78
79
80
81
82
83
84
85
86
87
88







-
-
-
-
+
+
+
+







<dt class="terms"><span class="code">Forbidden fruits</span></dt>
<dd class="terms">
<p class="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 class="p">The website listings contain full station homepages and a few
    more extras.  In this mode we can even acceess the XSPF playlist
    formats directly.  Both, the server search function, or browsing by
    audio/video format are supported.  </p>
<p class="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>
<div class="note" title="Note">
<svg width="24" height="24" version="1.1">
 <path class="yelp-svg-fill" d="m4 3h16c0.554 0 1 0.446 1 1v11h-6v6h-11c-0.554 0-1-0.446-1-1v-16c0-0.554 0.446-1 1-1z"></path>
 <path class="yelp-svg-fill" d="m17 16h4l-5 5v-4c0-0.554 0.446-1 1-1z"></path>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">A miximum of 100 entries get fetched in this mode however
    (which is 5 pages à 20 entries).</p></div></div></div>
</div>

Modified help/html/youtube.html from [bd547aa56e] to [afd4226ccd].

38
39
40
41
42
43
44
45
46


47
48
49


50
51
52
53
54
55
56
38
39
40
41
42
43
44


45
46
47


48
49
50
51
52
53
54
55
56







-
-
+
+

-
-
+
+







 <path class="yelp-svg-fill" transform="rotate(30)" d="m5.5801 4.3612h6v1h-6z"></path>
 <path class="yelp-svg-fill" transform="rotate(-30)" d="m-6.9199 16.289h6v1h-6z"></path>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">This plugin is no longer supported or a default
	channel. Due to exceeded quotas, it ceased working, and Youtube/Google
	bothered me with inane requests for video recordings of how ST2 works
	(instead of simply looking at the code or investigating their own logs).
	Btw, the exceeded quota was unlikely due to regular ST2 usage. It's
	more probable the builtin and plainly-in-sight builtin API key was
	reappropriated otherwise. Hence, you would have to
	more probable the builtin and plain-in-sight API key was reappropriated
        otherwise. Hence, you would now have to
        <span class="link"><a href="https://developers.google.com/youtube/v3/getting-started" title="https://developers.google.com/youtube/v3/getting-started">get
	your own key</a></span> now, if you wanted to use this channel. Btw,
	overall it's not that interesting / worth the effort IMO.</p></div></div></div>
	your own key</a></span>, if you wanted to use this channel. Overall this
	channel is not that interesting / worth the effort IMO.</p></div></div></div>
</div>
<p class="p">Googles Youtube provides a quirky JSON API that makes browsing
        channels and genres feasible.  This beta plugin provides a little
        overview, and usually retrieves recent video uploads.</p>
<p class="p">VLC can directly play Youtube URLs. For other players one can use
        <span class="link"><a href="http://youtube-dl.org/" title="http://youtube-dl.org/">youtube-dl</a></span> as wrapper.
        For example <span class="cmd">totem $(youtube-dl %srv)</span> as configured player