Let the user pick between several streams

- And don't just pick the first one
This commit is contained in:
tomkat83 2016-06-25 17:21:47 +02:00
parent cfbc7f770c
commit aa60baeb97
4 changed files with 19 additions and 2 deletions

View file

@ -304,6 +304,7 @@
<string id="30538">Complete Re-Sync necessary</string>
<string id="30539">Download additional art from FanArtTV (slower!)</string>
<string id="30540">Download movie set/collection art from FanArtTV</string>
<string id="30541">Don't ask to pick a certain stream/quality</string>
<!-- service add-on -->

View file

@ -30,7 +30,7 @@
<string id="30538">Komplette Neusynchronisierung nötig</string>
<string id="30539">Zusätzliche Bilder von FanArtTV herunterladen (langsamer!)</string>
<string id="30540">FanArtTV Film-Sets/Collections Bilder herunterladen</string>
<string id="30541">Nicht fragen, welcher Stream/Qualität gespielt wird</string>
<string id="30014">Verbindung</string>
<string id="30015">Netzwerk</string>

View file

@ -2214,7 +2214,22 @@ class API():
xargs = clientinfo.ClientInfo().getXArgsDeviceInfo()
# For DirectPlay, path/key of PART is needed
if action == "DirectStream":
path = self.item[0][self.part].attrib['key']
if len(self.item) > 1 and utils.settings('bestQuality') == 'false':
# Several streams/files available.
dialoglist = []
for entry in self.item:
dialoglist.append(
"%sp %s - %s (%s)"
% (entry.attrib.get('videoResolution', 'unknown'),
entry.attrib.get('videoCodec', 'unknown'),
entry.attrib.get('audioProfile', 'unknown'),
entry.attrib.get('audioCodec', 'unknown'))
)
media = xbmcgui.Dialog().select('Select stream', dialoglist)
else:
media = 0
path = self.item[media][self.part].attrib['key']
url = self.server + path
# e.g. Trailers already feature an '?'!
if '?' in url:

View file

@ -82,6 +82,7 @@
<category label="30516"><!-- Playback -->
<setting type="sep" />
<setting id="bestQuality" type="bool" label="30541" default="false" />
<setting id="enableCinema" type="bool" label="30518" default="true" />
<setting id="askCinema" type="bool" label="30519" default="false" visible="eq(-1,true)" subsetting="true" />
<setting id="trailerNumber" type="slider" label="39000" default="3" visible="eq(-2,true)" range="1,1,15" option="int" />