The branch, dharma has been updated
via 56d837e09d7dfa5b85581e399ac1a695130aa4cc (commit)
via 4017f82334d740a2b05969064e38fc9b1ca01b96 (commit)
from 2562c9866f144d14286c4b4983cc56c711ea413c (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=56d837e09d7dfa5b85581e399ac1a695130aa4cc
commit 56d837e09d7dfa5b85581e399ac1a695130aa4cc
Author: spiff <[email protected]>
Date: Fri May 6 18:43:49 2011 +0200
[plugin.audio.dr.dk.netradio] updated to version 1.1.0
diff --git a/plugin.audio.dr.dk.netradio/addon.py
b/plugin.audio.dr.dk.netradio/addon.py
index f18295e..5706396 100644
--- a/plugin.audio.dr.dk.netradio/addon.py
+++ b/plugin.audio.dr.dk.netradio/addon.py
@@ -1,76 +1,31 @@
-import os
-import re
import sys
+import simplejson
+import urllib2
import xbmcgui
import xbmcplugin
-import danishaddons
-import danishaddons.web
-
-BASE_URL = 'http://www.dr.dk/netradio/wmp.asp'
+CHANNELS_URL = 'http://www.dr.dk/LiveNetRadio/datafeed/channels.js.drxml'
def showChannels():
- icon = os.path.join(danishaddons.ADDON_PATH, 'icon.png')
-
- format = danishaddons.ADDON.getSetting('format')
- if format == 'WMA':
- html = danishaddons.web.downloadAndCacheUrl(BASE_URL,
os.path.join(danishaddons.ADDON_DATA_PATH, 'channels.html'), 24 * 60)
-
- for m in re.finditer('<td nowrap="nowrap">(.*?)</td>.*?\n.*?<a
href="([^"]+)">%s</a>' % getQuality(), html):
- name = danishaddons.web.decodeHtmlEntities(m.group(1))
- asxUrl = m.group(2)
-
- item = xbmcgui.ListItem(name, iconImage = icon)
- item.setProperty('IsPlayable', 'true')
- item.setInfo(type = 'audio', infoLabels = {
- 'title' : name
- })
- url = danishaddons.ADDON_PATH + '?url=' + asxUrl
- xbmcplugin.addDirectoryItem(danishaddons.ADDON_HANDLE, url, item)
- else: # format == 'AAC'
- for idx in range(1, 31):
- name = danishaddons.msg(30100 + idx)
- url = danishaddons.msg(30200 + idx)
- item = xbmcgui.ListItem(name, iconImage = icon)
- item.setProperty('IsPlayable', 'true')
- item.setProperty("IsLive", "true")
- item.setInfo(type = 'audio', infoLabels = {
- 'title' : name
- })
- xbmcplugin.addDirectoryItem(danishaddons.ADDON_HANDLE, url, item)
+ u = urllib2.urlopen(CHANNELS_URL)
+ data = u.read()
+ u.close()
- xbmcplugin.endOfDirectory(danishaddons.ADDON_HANDLE)
+ channels = simplejson.loads(data[39:-3])
-def playStream(url):
- playlist = danishaddons.web.downloadUrl(url)
- m = re.search('<TITLE>(.*?)</TITLE>.*?<Ref href="(.*?)"/>', playlist,
re.DOTALL)
-
- title = m.group(1)
- streamUrl = m.group(2)
+ for channel in channels:
+ item = xbmcgui.ListItem(channel['title'], iconImage = channel['logo'])
+ item.setProperty('IsPlayable', 'true')
+ item.setProperty("IsLive", "true")
+ item.setInfo(type = 'audio', infoLabels = {
+ 'title' : channel['title']
+ })
+ xbmcplugin.addDirectoryItem(HANDLE, channel['mediaFile'], item)
- item = xbmcgui.ListItem(title = title, path = streamUrl)
- item.setInfo('music', {
- 'artist' : 'DR',
- 'title' : title
- })
- xbmcplugin.setResolvedUrl(danishaddons.ADDON_HANDLE, True, item)
-
-
-def getQuality():
- quality = danishaddons.ADDON.getSetting('quality')
- if quality == 'High':
- return 'H\øj'
- elif quality == 'Medium':
- return 'Mellem'
- else:
- return 'Lav'
+ xbmcplugin.endOfDirectory(HANDLE)
if __name__ == '__main__':
- danishaddons.init(sys.argv)
-
- if danishaddons.ADDON_PARAMS.has_key('url'):
- playStream(danishaddons.ADDON_PARAMS['url'])
- else:
- showChannels()
+ HANDLE = int(sys.argv[1])
+ showChannels()
diff --git a/plugin.audio.dr.dk.netradio/addon.xml
b/plugin.audio.dr.dk.netradio/addon.xml
index 9e1ecd0..1d14217 100644
--- a/plugin.audio.dr.dk.netradio/addon.xml
+++ b/plugin.audio.dr.dk.netradio/addon.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<addon
id="plugin.audio.dr.dk.netradio"
- version="1.0.3"
+ version="1.1.0"
name="DR.dk Netradio"
provider-name="stemann [[email protected]], twinther [[email protected]]">
<requires>
<import addon="xbmc.python" version="1.0"/>
- <import addon="script.module.danishaddons" version="1.1.0"/>
+ <import addon="script.module.simplejson" version="2.0.10"/>
</requires>
<extension point="xbmc.python.pluginsource" library="addon.py">
<provides>audio</provides>
diff --git a/plugin.audio.dr.dk.netradio/changelog.txt
b/plugin.audio.dr.dk.netradio/changelog.txt
index fd884b2..551f7c5 100644
--- a/plugin.audio.dr.dk.netradio/changelog.txt
+++ b/plugin.audio.dr.dk.netradio/changelog.txt
@@ -1,3 +1,7 @@
+[B]Version 1.1.0[/B]
+- Dynamically load AAC channels, they are no longer hardcoded.
+- Removed support for old low quality WMA channels
+
[B]Version 1.0.3[/B]
- Fix encoding error with danish chars in .py file
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=4017f82334d740a2b05969064e38fc9b1ca01b96
-----------------------------------------------------------------------
Summary of changes:
plugin.audio.dr.dk.netradio/addon.py | 81 ++-------
plugin.audio.dr.dk.netradio/addon.xml | 4 +-
plugin.audio.dr.dk.netradio/changelog.txt | 4 +
.../LICENSE.txt | 0
.../addon.xml | 8 +-
plugin.video.diy/default.py | 177 ++++++++++++++++++++
plugin.video.diy/icon.png | Bin 0 -> 59874 bytes
.../resources/language/English/strings.xml | 61 +++++++
8 files changed, 266 insertions(+), 69 deletions(-)
copy {plugin.audio.abradio.cz => plugin.video.diy}/LICENSE.txt (100%)
copy {plugin.video.foodnetwork => plugin.video.diy}/addon.xml (73%)
create mode 100644 plugin.video.diy/default.py
create mode 100644 plugin.video.diy/icon.png
create mode 100644 plugin.video.diy/resources/language/English/strings.xml
hooks/post-receive
--
Plugins
------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network
management toolset available today. Delivers lowest initial
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons