mirror of
https://github.com/jellyfin/jellyfin-kodi.git
synced 2024-11-10 04:06:11 +00:00
playutils: Prettify audio/subs track selection dialog
* Capitalize language in the track title * Capitalize channel layout in the track title (e.g. 'Stereo') * Remove track index from the title - users generally don't care what the # is * Use commercial names for the audio codecs (e.g. 'Dolby Digital' instead of 'ac3') * Always show codec name for subtitle tracks
This commit is contained in:
parent
b66a838778
commit
4312135524
1 changed files with 25 additions and 6 deletions
|
@ -526,6 +526,23 @@ class PlayUtils(object):
|
|||
|
||||
return path
|
||||
|
||||
def get_commercial_codec_name(self, codec, profile):
|
||||
NAMES = {
|
||||
'ac3': 'Dolby Digital',
|
||||
'eac3': 'Dolby Digital+',
|
||||
'truehd': 'Dolby TrueHD',
|
||||
'dts': 'DTS'
|
||||
}
|
||||
|
||||
if profile == 'DTS-HD MA':
|
||||
return 'DTS-HD Master Audio'
|
||||
if profile == 'DTS-HD HRA':
|
||||
return 'DTS-HD High Resolution Audio'
|
||||
if codec in NAMES:
|
||||
return NAMES[codec]
|
||||
|
||||
return codec.upper()
|
||||
|
||||
def get_audio_subs(self, source, audio=None, subtitle=None):
|
||||
|
||||
''' For transcoding only
|
||||
|
@ -546,22 +563,24 @@ class PlayUtils(object):
|
|||
|
||||
if stream_type == 'Audio':
|
||||
|
||||
codec = stream['Codec']
|
||||
channel = stream.get('ChannelLayout', "")
|
||||
profile = stream['Profile'] if 'Profile' in stream else None
|
||||
codec = self.get_commercial_codec_name(stream['Codec'], profile)
|
||||
channel = stream.get('ChannelLayout', "").capitalize()
|
||||
|
||||
if 'Language' in stream:
|
||||
track = "%s - %s - %s %s" % (index, stream['Language'], codec, channel)
|
||||
track = "%s - %s %s" % (stream['Language'].capitalize(), codec, channel)
|
||||
else:
|
||||
track = "%s - %s %s" % (index, codec, channel)
|
||||
track = "%s %s" % (codec, channel)
|
||||
|
||||
audio_streams[track] = index
|
||||
|
||||
elif stream_type == 'Subtitle':
|
||||
codec = self.get_commercial_codec_name(stream['Codec'], None)
|
||||
|
||||
if 'Language' in stream:
|
||||
track = "%s - %s" % (index, stream['Language'])
|
||||
track = "%s - %s" % (stream['Language'].capitalize(), codec)
|
||||
else:
|
||||
track = "%s - %s" % (index, stream['Codec'])
|
||||
track = "%s" % codec
|
||||
|
||||
if stream['IsDefault']:
|
||||
track = "%s - Default" % track
|
||||
|
|
Loading…
Reference in a new issue