Exemplo n.º 1
0
    def get_video(self, video_path, subtitles_path=None, subtitles=True, embedded_subtitles=None, episode_object=None):
        if not subtitles_path:
            subtitles_path = self.get_subtitles_path(video_path)

        try:
            video = subliminal.scan_video(video_path)
        except Exception as error:
            sickrage.app.log.debug('Exception: {}'.format(error))
        else:
            if video.size > 10485760:
                video.hashes['itasa'] = hash_itasa(video_path)

            # external subtitles
            if subtitles:
                video.subtitle_languages |= set(subliminal.core.search_external_subtitles(video_path, directory=subtitles_path).values())

            if embedded_subtitles is None:
                embedded_subtitles = bool(
                    not sickrage.app.config.embedded_subtitles_all and video_path.endswith('.mkv'))

            subliminal.refine(video, episode_refiners=self.episode_refiners, embedded_subtitles=embedded_subtitles, release_name=episode_object.name,
                              tv_episode=episode_object)

            from sickrage.core.scene_exceptions import get_scene_exceptions
            video.alternative_series = list(get_scene_exceptions(episode_object.show.indexer_id))

            # remove format metadata
            video.format = ""

            return video
Exemplo n.º 2
0
def get_video(video_path, subtitles_path=None, subtitles=True, embedded_subtitles=None, episode=None):
    if not subtitles_path:
        subtitles_path = get_subtitles_path(video_path)

    try:
        video = subliminal.scan_video(video_path)
    except Exception as error:
        sickrage.app.log.debug('Exception: {}'.format(error))
    else:
        if video.size > 10485760:
            video.hashes['itasa'] = hash_itasa(video_path)

        # external subtitles
        if subtitles:
            video.subtitle_languages |= \
                set(subliminal.core.search_external_subtitles(video_path, directory=subtitles_path).values())

        if embedded_subtitles is None:
            embedded_subtitles = bool(
                not sickrage.app.config.embedded_subtitles_all and video_path.endswith('.mkv'))

        subliminal.refine(video, episode_refiners=episode_refiners, embedded_subtitles=embedded_subtitles,
                          release_name=episode.name, tv_episode=episode)

        video.alternative_series = list(get_scene_exceptions(episode.show.indexerid))

        # remove format metadata
        video.format = ""

        return video