From 567da0114ee43e3d232748b407df64ef6d2d7840 Mon Sep 17 00:00:00 2001 From: angelblue05 Date: Wed, 5 Aug 2015 23:55:20 -0500 Subject: [PATCH] Quick follow up Account for when subtitles are disabled. --- resources/lib/Player.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/resources/lib/Player.py b/resources/lib/Player.py index 97111e96..087af456 100644 --- a/resources/lib/Player.py +++ b/resources/lib/Player.py @@ -177,16 +177,20 @@ class Player( xbmc.Player ): muted = result.get(u'result').get(u'muted') # Get current audio and subtitles track - track_query = '{"jsonrpc": "2.0", "method": "Player.GetProperties", "params": {"playerid":1,"properties": ["currentsubtitle","currentaudiostream"]} , "id": 1}' + track_query = '{"jsonrpc": "2.0", "method": "Player.GetProperties", "params": {"playerid":1,"properties": ["currentsubtitle","currentaudiostream","subtitleenabled"]} , "id": 1}' result = xbmc.executeJSONRPC(track_query) result = json.loads(result) indexAudio = result['result']['currentaudiostream']['index'] indexSubs = result['result']['currentsubtitle']['index'] + boolSubs = result['result']['subtitleenabled'] # Convert back into an Emby index audioTracks = len(xbmc.Player().getAvailableAudioStreams()) indexAudio = indexAudio + 1 - indexSubs = indexSubs + audioTracks + 1 + if boolSubs: + indexSubs = indexSubs + audioTracks + 1 + else: + indexSubs = "" postdata = { 'QueueableMediaTypes': "Video", @@ -286,11 +290,12 @@ class Player( xbmc.Player ): muted = result.get(u'result').get(u'muted') # Get the current audio track and subtitles - track_query = '{"jsonrpc": "2.0", "method": "Player.GetProperties", "params": {"playerid":1,"properties": ["currentsubtitle","currentaudiostream"]} , "id": 1}' + track_query = '{"jsonrpc": "2.0", "method": "Player.GetProperties", "params": {"playerid":1,"properties": ["currentsubtitle","currentaudiostream","subtitleenabled"]} , "id": 1}' result = xbmc.executeJSONRPC(track_query) result = json.loads(result) indexAudio = result['result']['currentaudiostream']['index'] indexSubs = result['result']['currentsubtitle']['index'] + boolSubs = result['result']['subtitleenabled'] seekTime = xbmc.Player().getTime() @@ -314,8 +319,11 @@ class Player( xbmc.Player ): if subtitleindex: postdata['SubtitleStreamIndex'] = subtitleindex else: - audioTracks = len(xbmc.Player().getAvailableAudioStreams()) - postdata['SubtitleStreamIndex'] = indexSubs + audioTracks + 1 + if boolSubs: + audioTracks = len(xbmc.Player().getAvailableAudioStreams()) + postdata['SubtitleStreamIndex'] = indexSubs + audioTracks + 1 + else: + postdata['SubtitleStreamIndex'] = "" # Post playback to server self.logMsg("Sending POST play started.", 1)