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

⌈⌋ ⎇ branch:  streamtuner2


Check-in [f94731a05b]

Overview
Comment:Make static category lists more readable.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f94731a05bd13e2be1db2071a6bfc8a7442adc0f
User & Date: mario on 2015-05-07 17:10:43
Other Links: manifest | tags
Context
2015-05-07
17:11
Additional project+help links for manual. check-in: 76cf990460 user: mario tags: trunk
17:10
Make static category lists more readable. check-in: f94731a05b user: mario tags: trunk
17:09
Remove unsupported view-source: URL prefix, rewrite links from /cat/ to /doc/tip/ for downloading/plain view instead of text/html browsing. check-in: 8e4f191706 user: mario tags: trunk
Changes

Modified contrib/delicast.py from [2f25207529] to [78844d8df5].

1
2
3
4
5
6

7
8
9
10
11
12
13
1
2
3
4
5

6
7
8
9
10
11
12
13





-
+







# encoding: UTF-8
# api: streamtuner2
# title: Delicast
# description: directory of streaming media
# url: http://delicast.com/
# version: 0.1
# version: 0.2
# type: channel
# category: radio
# config: -
# png:
#    iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAA
#    AmJLR0QA/4ePzL8AAAAHdElNRQffBB4UJAsX77G0AAAANUlEQVQY02OwQwMMdv/BAEUASCFEoAIIEZIEIGYjBCAUwpb/6O5ACEABGQJ2cFsQIlB3oAEA6iVo+vl+BbQA
#    AAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMDQtMzBUMjI6MzY6MDMrMDI6MDAFLUvfAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTA0LTMwVDIyOjM2OjAzKzAyOjAwdHDz
35
36
37
38
39
40
41

42







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

43
44
45
46
47
48
49
50
51
52
53
54
55
56







+
-
+
+
+
+
+
+
+








    # control flags
    has_search = False
    listformat = "srv"
    audioformat = "mp3"
    titles = dict(listeners=False, bitrate=False, playing="Location")
    base = "http://delicast.com/"

    categories = ["60s", "70s", "80s", "90s", "Alternative", "Blues", "Chillout", "Christian", "Classical", "Community", "Country", "Culture", "Dance", "Disco", "Easy listening", "Electronic", "Folk", "Funk", "Gospel", "Hiphop", "House	Indie", "Information", "Jazz", "Latin", "Lounge", "Love", "Metal", "Oldies", "Pop", "R n b", "Reggae", "Rock", "Romantic", "Soul", "Sports", "Student", "Talk", "Techno", "Trance", "Urban", "World music"]
    categories = ["60s", "70s", "80s", "90s", "Alternative", "Blues",
    "Chillout", "Christian", "Classical", "Community", "Country", "Culture",
    "Dance", "Disco", "Easy listening", "Electronic", "Folk", "Funk",
    "Gospel", "Hiphop", "House Indie", "Information", "Jazz", "Latin",
    "Lounge", "Love", "Metal", "Oldies", "Pop", "R n b", "Reggae", "Rock",
    "Romantic", "Soul", "Sports", "Student", "Talk", "Techno", "Trance",
    "Urban", "World music"]


    # static
    def update_categories(self):
        pass


71
72
73
74
75
76
77
78

79
80
81
82
83
84
85
86
78
79
80
81
82
83
84

85
86
87
88
89
90
91
92
93







-
+








                    url = "urn:delicast",
                    genre = cat,
             #      genre = unhtml(tags),
                ))
        return r
      

    # Update `url`
    # Update `url` on station data access (incurs a delay for playing or recording)
    def row(self):
        r = ChannelPlugin.row(self)
        if r.get("url") == "urn:delicast":
            html = ahttp.get(r["homepage"])
            ls = re.findall("^var url = \"(.+)\";", html, re.M)
            r["url"] = ls[0]
        return r

Modified contrib/di.py from [7e57dd345f] to [09e4c6e16c].

32
33
34
35
36
37
38

39
40
41
42
43
44
45
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46







+







class di (ChannelPlugin):

    # control flags
    has_search = False
    listformat = "pls"
    audioformat = "audio/aac"
    titles = dict(listeners=False, bitrate=False, playing=False)

    categories = ["di.fm", "sky.fm", "jazzradio.com"]
               # sky.fm is an alias of "radiotunes.com"

    # static
    def update_categories(self):
        pass

Modified contrib/publicradiofan.py from [4d38edc4a6] to [27f032530a].

36
37
38
39
40
41
42

43





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

44
45
46
47
48
49
50
51
52
53
54
55







+
-
+
+
+
+
+







class publicradiofan (ChannelPlugin):

    # control attributes
    has_search = False
    format = "mp3"
    listformat = "href"
    titles = dict(listeners=False, bitrate=False, playing="Description")

    categories = ["adult alternative", "adult contemporary", "blues", "business", "classical", "community", "contemporary", "country", "easy", "education", "ethnic", "folk", "free-form", "full service", "government", "international", "jazz", "military", "news", "nostalgia", "oldies", "reading", "regional", "religious", "rock", "seasonal", "sports", "student", "talk", "traffic", "urban", "variety", "world", "youth"]
    categories = ["adult alternative", "adult contemporary", "blues", "business", "classical",
    "community", "contemporary", "country", "easy", "education", "ethnic", "folk", "free-form",
    "full service", "government", "international", "jazz", "military", "news", "nostalgia",
    "oldies", "reading", "regional", "religious", "rock", "seasonal", "sports", "student",
    "talk", "traffic", "urban", "variety", "world", "youth"]
    

    # static
    def update_categories(self):
        pass
        

Modified contrib/windowsmedia.py from [e67533e16b] to [c3090e4bd8].

42
43
44
45
46
47
48

49
50
51



52
53
54
55
56
57
58
42
43
44
45
46
47
48
49
50
51

52
53
54
55
56
57
58
59
60
61







+


-
+
+
+









    # control flags
    has_search = False
    listformat = "wax"
    audioformat = "audio/mpeg"
    titles = dict(listeners=False, bitrate=False, playing="Location")

    _web = "http://www.windowsmedia.com/RadioUI/Home.aspx?g={}&culture=en-gb"
    base = "http://www.windowsmedia.com/RadioUI/getstationsforgenre.aspx?g={}&offset=0&culture={}"
    _url = "http://www.windowsmedia.com/RadioTunerAPI/Service.asmx/playStation?stationID={}&dialupDetected=true&useHighBandwidth=false&locale={}"
    _url = "http://www.windowsmedia.com/RadioTunerAPI/Service.asmx/playStation?"\
         + "stationID={}&dialupDetected=false&useHighBandwidth=true&locale={}"
           # reversed default true and false for connection speed

    categories = ["80s", "Adult Hits", "Adult Rock", "Alternative Rock",
    "Americana + Roots", "Big Band", "Blues", "Christian Hits", "Classic R&B",
    "Classic Rock", "Classical", "Comedy", "Country", "Dance + Electronica",
    "Holiday", "Indie", "International", "Jazz", "Latin", "Metal", "Miscellaneous",
    "New Age", "News + Talk", "Oldies", "Public Radio", "Rap + Hip Hop", "Reggae",
    "Religious", "Rock", "Smooth Jazz", "Soft Rock", "Soundtracks + Musicals",