From 48dc18220d633c311a4d362ee7757806221a76a5 Mon Sep 17 00:00:00 2001 From: Bubbles Date: Tue, 27 Sep 2022 14:39:01 +0100 Subject: [PATCH] User video mode selection support updated and debugged The user video mode was default with subtitles on. I removed the boolean signlanguage support added support for four user video modes: - none: (default) Play video with no additional support - viddesc: Play video with video description subtitles - subtitle: Play video with subtitles - signlang: Play video with sign language included I also updated the WDRmaus plugin to verify this worked. --- lib/libwdr.py | 12 +++++++----- lib/libwdrparser.py | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/lib/libwdr.py b/lib/libwdr.py index 9374e3a..55d0b44 100644 --- a/lib/libwdr.py +++ b/lib/libwdr.py @@ -46,9 +46,7 @@ def libWdrListVideos(self): return libWdrRssAndroidParser.parseVideos(self.params['url']) def libWdrListId(self): - print(f'https://www1.wdr.de/{self.params["id"]}~_format-mp111_type-rss.feed') return libWdrRssParser.parseId(self.params['id']) - r#eturn libWdrRssParser.parseFeed(f'https://www1.wdr.de/{self.params["id"]}~_format-mp111_type-rss.feed') def libWdrListFeed(self): return libWdrRssParser.parseFeed(self.params['url']) @@ -63,7 +61,6 @@ def libWdrListPodcast(self): def libWdrSearch(self): import libwdrhtmlparser as libWdrHtmlParser - #search_string = libMediathek.getSearchString() return libWdrHtmlParser.parse("http://www1.wdr.de/mediathek/video/suche/avsuche100~suche_parentId-videosuche100.html?pageNumber=1&sort=date&q="+search_string) def libWdrListSearch(self): @@ -73,8 +70,10 @@ def libWdrListSearch(self): def libWdrPlay(self): if 'm3u8' in self.params: return {'media':[{'url':self.params['m3u8'], 'type':'video', 'stream':'HLS'}]} + elif 'uservideomode' in self.params: + return libWdrParser.parseVideo(self.params['url'], self.params['uservideomode']) else: - return libWdrParser.parseVideo(self.params['url']) + return libWdrParser.parseVideo(self.params['url'], 'none') def libWdrPlayDirect(self): import requests @@ -86,6 +85,9 @@ def libWdrPlayNimex(self): return libwdrnimex.getAudio(self.params['id']) def libWdrPlayJs(self): - return libWdrParser.parseVideoJs(self.params['url']) + if 'uservideomode' in self.params: + return libWdrParser.parseVideoJs(self.params['url'], self.params['uservideomode']) + else: + return libWdrParser.parseVideoJs(self.params['url'], 'none') \ No newline at end of file diff --git a/lib/libwdrparser.py b/lib/libwdrparser.py index 250d4a1..ac0947c 100644 --- a/lib/libwdrparser.py +++ b/lib/libwdrparser.py @@ -6,12 +6,12 @@ base = 'http://www1.wdr.de' -def parseVideo(url,signLang=False): +def parseVideo(url,viewerMode = 'none'): response = requests.get(url).text if 'mediaLink video' in response: j = json.loads(re.compile('