Merge remote-tracking branch 'origin/master'
This commit is contained in:
+9
-22
@@ -704,14 +704,16 @@ def sort_servers(servers_list):
|
||||
# 2: Only qualities
|
||||
# 3: Do not order
|
||||
|
||||
if config.get_setting('favorites_servers') and favorite_servers and config.get_setting('default_action'):
|
||||
if config.get_setting('favorites_servers') and favorite_servers and config.get_setting('default_action') and not config.get_setting('quality_priority'):
|
||||
priority = 0 # 0: Servers and qualities
|
||||
elif config.get_setting('favorites_servers') and favorite_servers and config.get_setting('default_action') and config.get_setting('quality_priority'):
|
||||
priority = 1 # 0: Servers and qualities
|
||||
elif config.get_setting('favorites_servers') and favorite_servers:
|
||||
priority = 1 # Servers only
|
||||
priority = 2 # Servers only
|
||||
elif config.get_setting('default_action'):
|
||||
priority = 2 # Only qualities
|
||||
priority = 3 # Only qualities
|
||||
else:
|
||||
priority = 3 # Do not order
|
||||
priority = 4 # Do not order
|
||||
|
||||
if config.get_setting('default_action') == 1:
|
||||
quality_list.reverse()
|
||||
@@ -748,26 +750,11 @@ def sort_servers(servers_list):
|
||||
|
||||
# We order according to priority
|
||||
if priority == 0: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_server'], orden['indice_quality'])) # Servers and qualities
|
||||
elif priority == 1: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_server'])) # Servers only
|
||||
elif priority == 2: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_quality'])) # Only qualities
|
||||
elif priority == 1: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_quality'], orden['indice_server'])) # Servers and qualities
|
||||
elif priority == 2: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_server'])) # Servers only
|
||||
elif priority == 3: sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_quality'])) # Only qualities
|
||||
else: sorted_list.sort(key=lambda orden: orden['indice_language'])
|
||||
|
||||
# if quality priority is active
|
||||
if priority == 0 and config.get_setting('quality_priority'):
|
||||
max_quality = sorted_list[0]["indice_quality"] if sorted_list and "indice_quality" in sorted_list[0] else 0
|
||||
for n, item in enumerate(servers_list):
|
||||
|
||||
if not item.server or item.server.lower() in blacklisted_servers:
|
||||
continue
|
||||
|
||||
if index(favorite_quality, item.quality.lower()) < max_quality:
|
||||
element["indice_server"] = n
|
||||
element["indice_quality"] = index(favorite_quality, item.quality.lower())
|
||||
element['videoitem'] = item
|
||||
sorted_list.append(element)
|
||||
|
||||
sorted_list.sort(key=lambda orden: (orden['indice_language'], orden['indice_quality'], orden['indice_server']))
|
||||
|
||||
return [v['videoitem'] for v in sorted_list if v]
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -52,7 +52,7 @@ def hdpass_get_servers(item):
|
||||
|
||||
data = httptools.downloadpage(url, CF=False).data
|
||||
patron_res = '<div class="buttons-bar resolutions-bar">(.*?)<div class="buttons-bar'
|
||||
patron_mir = '<div class="buttons-bar hosts-bar">(.*?)<div id="main-player'
|
||||
patron_mir = '<div class="buttons-bar hosts-bar">(.*?)(?:<div id="main-player|<script)'
|
||||
patron_option = r'<a href="([^"]+?)"[^>]+>([^<]+?)</a'
|
||||
|
||||
res = scrapertools.find_single_match(data, patron_res)
|
||||
|
||||
@@ -971,7 +971,7 @@ def play_video(item, strm=False, force_direct=False, autoplay=False):
|
||||
xlistitem.setProperty("inputstream.adaptive.license_type", item.drm)
|
||||
xlistitem.setProperty("inputstream.adaptive.license_key", item.license)
|
||||
xlistitem.setMimeType('application/dash+xml')
|
||||
elif item.manifest == 'hls' or mediaurl.split('|')[0].endswith('m3u8'):
|
||||
elif item.manifest == 'hls' or (mediaurl.split('|')[0].endswith('m3u8') and mediaurl.startswith('http')):
|
||||
if not install_inputstream():
|
||||
return
|
||||
xlistitem.setProperty('inputstream' if PY3 else 'inputstreamaddon', 'inputstream.adaptive')
|
||||
|
||||
Reference in New Issue
Block a user