The branch, dharma has been updated
       via  0e226211608ecff82f3e66e16a1a0fe120879de9 (commit)
       via  9906e04444e60af5aa867e38bc2f318d649b616e (commit)
      from  d8a6b8c42c266803b39b70f63711fd34fb1295ed (commit)

- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=0e226211608ecff82f3e66e16a1a0fe120879de9

commit 0e226211608ecff82f3e66e16a1a0fe120879de9
Author: spiff <[email protected]>
Date:   Thu Sep 15 08:44:24 2011 +0200

    [plugin.video.jupiterbroadcasting] updated to version 1.2.0

diff --git a/plugin.video.jupiterbroadcasting/addon.xml 
b/plugin.video.jupiterbroadcasting/addon.xml
index dc00780..d780426 100644
--- a/plugin.video.jupiterbroadcasting/addon.xml
+++ b/plugin.video.jupiterbroadcasting/addon.xml
@@ -12,7 +12,7 @@
   </extension>

   <extension point="xbmc.addon.metadata">

     <summary>Jupiter Broadcasting video plugin</summary>

-    <description>Videos from the Jupiter Broadcasting Network.</description>

+    <description>Shows from the Jupiter Broadcasting Network including the 
Linux Action Show, STOked, TechSNAP and more.</description>

     <platform>all</platform>

   </extension>

 </addon>

diff --git a/plugin.video.jupiterbroadcasting/changelog.txt 
b/plugin.video.jupiterbroadcasting/changelog.txt
index 8f859bc..2c7d37c 100644
--- a/plugin.video.jupiterbroadcasting/changelog.txt
+++ b/plugin.video.jupiterbroadcasting/changelog.txt
@@ -1,3 +1,8 @@
+[B]Version 1.2.0[/B]

+- Switched to HD video

+- Updated some of the show thumbnail images

+- Fix for RSS feeds without enclosures

+

 [B]Version 1.1.0[/B]

 - New show: The MMOrgue

 - New show: TechSNAP

diff --git a/plugin.video.jupiterbroadcasting/default.py 
b/plugin.video.jupiterbroadcasting/default.py
index 218ad79..b6b0b15 100644
--- a/plugin.video.jupiterbroadcasting/default.py
+++ b/plugin.video.jupiterbroadcasting/default.py
@@ -8,12 +8,12 @@ def CATEGORIES():
        plugins = {}

        plugins[__language__(30006)] = {

                'feed': 
'http://feeds2.feedburner.com/AllJupiterVideos?format=xml',

-               'image': 'http://www.jupiterbroadcasting.com/jupiter.png',

+               'image': 
'http://images2.wikia.nocookie.net/__cb20110118004527/jupiterbroadcasting/images/2/24/JupiterBadgeGeneric.jpg',

                'plot': 'All the latest videos from Jupiter Broadcasting.',

                'genre': 'Technology'

        }

        plugins[__language__(30000)] = {

-               'feed': 
'http://feeds.feedburner.com/linuxactionshowipodvid?format=xml',

+               'feed': 
'http://feeds.feedburner.com/computeractionshowvideo?format=xml',

                'image': 
'http://www.jupiterbroadcasting.com/images/LAS-VIDEO.jpg',

                'plot': 'The Linux Action Show covers the latest news in free 
and open source software, especially Linux.',

                'genre': 'Technology'

@@ -25,7 +25,7 @@ def CATEGORIES():
                'genre': 'Technology'

        }

        plugins[__language__(30002)] = {

-               'feed': 'http://feeds.feedburner.com/stokedipod?format=xml',

+               'feed': 'http://feeds.feedburner.com/stokedhd?format=xml',

                'image': 
'http://www.jupiterbroadcasting.com/images/STOked-BadgeHD.png',

                'plot': 'All the news about Star Trek Online you would ever 
need.',

                'genre': 'Technology'

@@ -37,7 +37,7 @@ def CATEGORIES():
                'genre': 'Technology'

        }

        plugins[__language__(30004)] = {

-               'feed': 
'http://feeds.feedburner.com/jupiterniteivid?format=xml',

+               'feed': 'http://feeds.feedburner.com/jupiternitehd?format=xml',

                'image': 
'http://www.jupiterbroadcasting.com/images/JANBADGE-LVID.jpg',

                'plot': 'Jupiter Broadcasting hooliganisms covered in front of 
a live audience on the intertubes.',

                'genre': 'Technology'

@@ -49,14 +49,14 @@ def CATEGORIES():
                'genre': 'Technology'

        }

        plugins[__language__(30007)] = {

-               'feed': 'http://feeds.feedburner.com/MMOrgueLarge?format=xml',

+               'feed': 'http://feeds.feedburner.com/MMOrgueHD?format=xml',

                'image': 
'http://www.jupiterbroadcasting.com/images/MMOrgueBadgeHD144.jpg',

                'plot': 'The MMOrgue is a show presented by Jeremy about 
Massively Multiplayer Online (MMO) games.',

                'genre': 'Technology'

        }

        plugins[__language__(30008)] = {

                'feed': 'http://feeds.feedburner.com/techsnaphd?format=xml',

-               'image': 
'http://images4.wikia.nocookie.net/jupiterbroadcasting/images/9/93/Techsnap.jpg',

+               'image': 
'http://images3.wikia.nocookie.net/jupiterbroadcasting/images/d/d6/Techsnapcenter.jpg',

                'plot': 'TechSNAP is a show about technology news hosted by 
Chris Fisher and Allan Jude which records live on Thursdays and is released on 
the following Monday.',

                'genre': 'Technology'

        }

@@ -66,13 +66,20 @@ def CATEGORIES():
                'plot': 'SciByte is a show about science topics presented by 
Heather and Jeremy.',

                'genre': 'Science'

        }

+       # TODO: Add FauxShow?

+       #plugins[__language__(30011)] = {

+       #       'feed': 'http://blip.tv/fauxshow/rss',

+       #       'image': 
'http://images3.wikia.nocookie.net/__cb20110422002134/jupiterbroadcasting/images/0/0b/Fauxshow.jpg',

+       #       'plot': 'The FauxShow is not a real show, but a social 
experience. Unlike most of the shows on the network, the FauxShow has no 
defined subject and the topic varies week to week.',

+       #       'genre': 'Humour'

+       #}

        x = 1

        for name, data in plugins.iteritems():

                data['count'] = x

                x = x + 1

                addDir(name, data['feed'], 1, data['image'], data)

        #TODO: Add Jupiter Broadcasting Live via Justin.tv?

-       #addLink(__language__(30007), 
'http://www.justin.tv/widgets/live_embed_player.swf?channel=jupiterbroadcasting',
 '', '', 
'http://www.jupiterbroadcasting.com/wp-content/themes/ondemand/images/logo.jpg')

+       #addLink(__language__(30010), 
'http://www.justin.tv/widgets/live_embed_player.swf?channel=jupiterbroadcasting',
 '', '', 
'http://www.jupiterbroadcasting.com/wp-content/themes/ondemand/images/logo.jpg')

 

 def INDEX(name, url):

        import feedparser

@@ -81,17 +88,19 @@ def INDEX(name, url):
        for item in data.entries:

                info = {}

                # The title

-               title = info['Title'] = str(x) + '. ' + item.title

-               # Video URL

-               video = getattr(item.enclosures[0], 'href', 0);

-               if video == 0:

-                       video = getattr(item.enclosures[0], 'url', '')

-               size = getattr(item.enclosures[0], 'length', 0)

-               info['size'] = int(size)

+               title = info['title'] = str(x) + '. ' + item.title

+               # Process the enclosures

+               if hasattr(item, 'enclosures'):

+                       # Video URL

+                       video = getattr(item.enclosures[0], 'href', 0);

+                       if video == 0:

+                               video = getattr(item.enclosures[0], 'url', '')

+                       size = getattr(item.enclosures[0], 'length', 0)

+                       info['size'] = int(size)

                info['count'] = x

-               #Date

+               # Date

                date = info['date'] = strftime("%d.%m.%Y", item.updated_parsed)

-               info['Plot'] = re.sub(r'<[^>]*?>', '', item.summary)

+               info['plot'] = re.sub(r'<[^>]*?>', '', item.summary)

                info['plotoutline'] = item.subtitle

                info['director'] = item.author

                info['tvshowtitle'] = name

@@ -120,7 +129,7 @@ def get_params():
 def addLink(name, url, date, iconimage, info):

         ok=True

         liz=xbmcgui.ListItem(name, date, iconImage=iconimage, 
thumbnailImage=iconimage)

-        liz.setInfo( type="Video", infoLabels=info )

+        liz.setInfo( type="video", infoLabels=info )

         
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)

         return ok

 

@@ -129,7 +138,7 @@ def addDir(name,url,mode,iconimage, info):
        ok=True

        info["Title"] = name

        liz=xbmcgui.ListItem(name, iconImage=iconimage, 
thumbnailImage=iconimage)

-       liz.setInfo(type="Video", infoLabels=info)

+       liz.setInfo(type="video", infoLabels=info)

        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=True)

        return ok

 

diff --git 
a/plugin.video.jupiterbroadcasting/resources/language/English/strings.xml 
b/plugin.video.jupiterbroadcasting/resources/language/English/strings.xml
index 82c11bc..005743f 100644
--- a/plugin.video.jupiterbroadcasting/resources/language/English/strings.xml
+++ b/plugin.video.jupiterbroadcasting/resources/language/English/strings.xml
@@ -10,4 +10,6 @@
   <string id="30007">The MMOrgue</string>
   <string id="30008">TechSNAP</string>
   <string id="30009">SciByte</string>
+  <string id="30010">Live</string>
+  <string id="30011">FauxShow</string>
 </strings>

http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=9906e04444e60af5aa867e38bc2f318d649b616e

commit 9906e04444e60af5aa867e38bc2f318d649b616e
Author: spiff <[email protected]>
Date:   Thu Sep 15 08:42:48 2011 +0200

    [plugin.video.eevblog] updated to version 0.1.8

diff --git a/plugin.video.eevblog/addon.xml b/plugin.video.eevblog/addon.xml
index 10d230c..8bfbe54 100644
--- a/plugin.video.eevblog/addon.xml
+++ b/plugin.video.eevblog/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <addon id="plugin.video.eevblog"
        name="EEVblog"
-       version="0.1.7"
+       version="0.1.8"
        provider-name="Clumsy">
   <requires>
     <import addon="xbmc.python" version="1.0"/>
diff --git a/plugin.video.eevblog/changelog.txt 
b/plugin.video.eevblog/changelog.txt
index 3eb7835..f649e55 100644
--- a/plugin.video.eevblog/changelog.txt
+++ b/plugin.video.eevblog/changelog.txt
@@ -1,3 +1,8 @@
+[B]Version 0.1.8[/B]
+ 
+- fixes video links
+- thanks to the youtube plugin authors where I borrowed some code
+
 [B]Version 0.1.7[/B]
  
 - fixed bug that broke old episodes
diff --git a/plugin.video.eevblog/default.py b/plugin.video.eevblog/default.py
index b1a39b9..856c4e5 100644
--- a/plugin.video.eevblog/default.py
+++ b/plugin.video.eevblog/default.py
@@ -3,7 +3,7 @@ import xbmc, xbmcgui, xbmcplugin, urllib2, urllib, re, string, 
sys, os, tracebac
 __plugin__ =  'EEVblog'
 __author__ = 'Clumsy <[email protected]>'
 __date__ = '02-05-2010'
-__version__ = '0.1.7'
+__version__ = '0.1.8'
 __settings__ = xbmcaddon.Addon(id='plugin.video.eevblog')
 
 # Thanks to some of the other plugin authors, where I borrowed some ideas from 
!
@@ -63,11 +63,11 @@ def play_video(ep_url):
   youtube_video_id = re.compile('<param name="movie" 
value=".*?/v/(.+?)[&\?].').findall(ep_data)
     
   # Ugly hack for a change in the page src from videos 140 onwards. 
-  if not youtube_video_id:
+  if len(youtube_video_id) == 0:
     youtube_video_id = 
re.compile('src="http://www.youtube.com/embed/(.*?)"').findall(ep_data)
   
   # Close the busy waiting dialog, if the youtube url wasn't parsed correctly.
-  if not youtube_video_id:
+  if len(youtube_video_id) == 0:
     xbmc.executebuiltin('Dialog.Close(busydialog)')
     return
         
@@ -79,15 +79,37 @@ def play_video(ep_url):
   
   video_info_html = open_url('http://www.youtube.com/get_video_info?video_id=' 
                              + youtube_video_id[0] +'&el=vevo')
-  fmt_url_map = urllib.unquote_plus(re.findall('&fmt_url_map=([^&]+)', 
video_info_html)[0]).split(',')
+  fmt_url_map = 
urllib.unquote_plus(re.findall('&url_encoded_fmt_stream_map=([^&]+)', 
video_info_html)[0]).split(',')
+    
   for url in fmt_url_map:
-    if (quality == 22) and url.startswith('22|'):
-      video_url = url.split('|')[1]
+    video_url = urllib.unquote_plus(url)
+    video_url = video_url.replace(" ", "%20").replace("url=", "")
+    if (quality == 22) and video_url.endswith('itag=22'):
       break
-    elif (url.startswith('35|')
-          or url.startswith('34|') or url.startswith('18|')):
-      video_url = url.split('|')[1]
+    elif (url.startswith('itag=35')
+          or url.endswith('itag=34') or url.endswith('itag=18')):
       break
+      
+  # The following is blatantly borrowed from the really nice youtube plugin. 
Thanks guys and boo youtube.
+  if (video_url.rfind(';') > 0):
+    video_url = video_url[:video_url.rfind(';')]
+  if (video_url.rfind(',') > video_url.rfind('&id=')): 
+    video_url = video_url[:video_url.rfind(',')]
+  elif (video_url.rfind(',') > video_url.rfind('/id/') and 
video_url.rfind('/id/') > 0):
+    video_url = video_url[:video_url.rfind('/')]
+  if video_url.find("&type") > 0:
+    video_url = video_url[:video_url.find("&type")]
+  pos = video_url.find("://")
+  fpos = video_url.find("fallback_host")
+  if pos > -1 and fpos > -1:
+    host = video_url[pos + 3:]
+    if host.find("/") > -1:
+      host = host[:host.find("/")]
+      fmt_fallback = video_url[fpos + 14:]
+    if fmt_fallback.find("&") > -1:
+      fmt_fallback = fmt_fallback[:fmt_fallback.find("&")]
+      video_url = video_url.replace(host, fmt_fallback)
+      video_url = video_url.replace("fallback_host=" + fmt_fallback, 
"fallback_host=" + host)
 
   listitem = xbmcgui.ListItem(label = name , iconImage = 'DefaultVideo.png', 
thumbnailImage = '')
   listitem.setInfo( type = "Video", infoLabels={ "Title": name, "Director": 
__plugin__, "Studio": __plugin__, "Genre": genre, "Plot": plot, "Episode": 
int(0)  } )

-----------------------------------------------------------------------

Summary of changes:
 plugin.video.eevblog/addon.xml                     |    2 +-
 plugin.video.eevblog/changelog.txt                 |    5 ++
 plugin.video.eevblog/default.py                    |   40 +++++++++++++----
 plugin.video.jupiterbroadcasting/addon.xml         |    2 +-
 plugin.video.jupiterbroadcasting/changelog.txt     |    5 ++
 plugin.video.jupiterbroadcasting/default.py        |   45 ++++++++++++--------
 .../resources/language/English/strings.xml         |    2 +
 7 files changed, 72 insertions(+), 29 deletions(-)


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to