From 3e2faadc2ffc42748441ebdcc0f3aa0c1d3c5f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Midb=C3=B8e?= Date: Sun, 16 Sep 2018 23:26:06 +0200 Subject: [PATCH] Video gets a new parameter embeded_subtitles to represent the subtitle files found in the mkv container. --- src/utils.py | 18 +++++++++--------- src/video.py | 5 ++++- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/utils.py b/src/utils.py index 91caf4e..b9534fe 100644 --- a/src/utils.py +++ b/src/utils.py @@ -47,7 +47,7 @@ def refine(video, embedded_subtitles=True, **kwargs): * :attr:`~subliminal.video.Video.resolution` * :attr:`~subliminal.video.Video.video_codec` * :attr:`~subliminal.video.Video.audio_codec` - * :attr:`~subliminal.video.Video.subtitle_languages` + * :attr:`~subliminal.video.Video.embeded_subtitles` :param bool embedded_subtitles: search for embedded subtitles. """ # skip non existing videos @@ -111,24 +111,24 @@ def refine(video, embedded_subtitles=True, **kwargs): # subtitle tracks if mkv.subtitle_tracks: if embedded_subtitles: - embedded_subtitle_languages = set() + embeded_subtitles = set() for st in mkv.subtitle_tracks: if st.language: try: - embedded_subtitle_languages.add(Language.fromalpha3b(st.language)) + embeded_subtitles.add(Language.fromalpha3b(st.language)) except BabelfishError: logging.error('Embedded subtitle track language %r is not a valid language', st.language) - embedded_subtitle_languages.add(Language('und')) + embeded_subtitles.add(Language('und')) elif st.name: try: - embedded_subtitle_languages.add(Language.fromname(st.name)) + embeded_subtitles.add(Language.fromname(st.name)) except BabelfishError: logging.debug('Embedded subtitle track name %r is not a valid language', st.name) - embedded_subtitle_languages.add(Language('und')) + embeded_subtitles.add(Language('und')) else: - embedded_subtitle_languages.add(Language('und')) - logging.debug('Found embedded subtitle %r', embedded_subtitle_languages) - video.subtitle_languages |= embedded_subtitle_languages + embeded_subtitles.add(Language('und')) + logging.debug('Found embedded subtitle %r', embeded_subtitles) + video.embeded_subtitles |= embeded_subtitles else: logging.debug('MKV has no subtitle track') else: diff --git a/src/video.py b/src/video.py index edfb777..d78e614 100644 --- a/src/video.py +++ b/src/video.py @@ -33,7 +33,7 @@ class Video(object): :param set subtitles: existing subtitle languages. """ def __init__(self, name, hash=None, size=None, format=None, release_group=None, resolution=None, video_codec=None, audio_codec=None, - imdb_id=None, subtitles=None): + imdb_id=None, subtitles=None, embeded_subtitles=None): #: Name or path of the video self.name = name @@ -64,6 +64,9 @@ class Video(object): #: Existing subtitle languages self.subtitles = subtitles or set() + #: Embeded subtitle languages + self.embeded_subtitles = embeded_subtitles or set() + @property def exists(self): """Test whether the video exists"""