mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-08-20 21:33:13 -07:00
add subliminal for subtitle download. #253
This commit is contained in:
parent
47289c903a
commit
c3889c01b1
149 changed files with 34173 additions and 33 deletions
90
libs/subliminal/score.py
Executable file
90
libs/subliminal/score.py
Executable file
|
@ -0,0 +1,90 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import print_function, unicode_literals
|
||||
from sympy import Eq, symbols, solve
|
||||
|
||||
|
||||
# Symbols
|
||||
release_group, resolution, format, video_codec, audio_codec = symbols('release_group resolution format video_codec audio_codec')
|
||||
imdb_id, hash, title, series, tvdb_id, season, episode = symbols('imdb_id hash title series tvdb_id season episode') # @ReservedAssignment
|
||||
year = symbols('year')
|
||||
|
||||
|
||||
def get_episode_equations():
|
||||
"""Get the score equations for a :class:`~subliminal.video.Episode`
|
||||
|
||||
The equations are the following:
|
||||
|
||||
1. hash = resolution + format + video_codec + audio_codec + series + season + episode + year + release_group
|
||||
2. series = resolution + video_codec + audio_codec + season + episode + release_group + 1
|
||||
3. year = series
|
||||
4. tvdb_id = series + year
|
||||
5. season = resolution + video_codec + audio_codec + 1
|
||||
6. imdb_id = series + season + episode + year
|
||||
7. format = video_codec + audio_codec
|
||||
8. resolution = video_codec
|
||||
9. video_codec = 2 * audio_codec
|
||||
10. title = season + episode
|
||||
11. season = episode
|
||||
12. release_group = season
|
||||
13. audio_codec = 1
|
||||
|
||||
:return: the score equations for an episode
|
||||
:rtype: list of :class:`sympy.Eq`
|
||||
|
||||
"""
|
||||
equations = []
|
||||
equations.append(Eq(hash, resolution + format + video_codec + audio_codec + series + season + episode + year + release_group))
|
||||
equations.append(Eq(series, resolution + video_codec + audio_codec + season + episode + release_group + 1))
|
||||
equations.append(Eq(series, year))
|
||||
equations.append(Eq(tvdb_id, series + year))
|
||||
equations.append(Eq(season, resolution + video_codec + audio_codec + 1))
|
||||
equations.append(Eq(imdb_id, series + season + episode + year))
|
||||
equations.append(Eq(format, video_codec + audio_codec))
|
||||
equations.append(Eq(resolution, video_codec))
|
||||
equations.append(Eq(video_codec, 2 * audio_codec))
|
||||
equations.append(Eq(title, season + episode))
|
||||
equations.append(Eq(season, episode))
|
||||
equations.append(Eq(release_group, season))
|
||||
equations.append(Eq(audio_codec, 1))
|
||||
return equations
|
||||
|
||||
|
||||
def get_movie_equations():
|
||||
"""Get the score equations for a :class:`~subliminal.video.Movie`
|
||||
|
||||
The equations are the following:
|
||||
|
||||
1. hash = resolution + format + video_codec + audio_codec + title + year + release_group
|
||||
2. imdb_id = hash
|
||||
3. resolution = video_codec
|
||||
4. video_codec = 2 * audio_codec
|
||||
5. format = video_codec + audio_codec
|
||||
6. title = resolution + video_codec + audio_codec + year + 1
|
||||
7. release_group = resolution + video_codec + audio_codec + 1
|
||||
8. year = release_group + 1
|
||||
9. audio_codec = 1
|
||||
|
||||
:return: the score equations for a movie
|
||||
:rtype: list of :class:`sympy.Eq`
|
||||
|
||||
"""
|
||||
equations = []
|
||||
equations.append(Eq(hash, resolution + format + video_codec + audio_codec + title + year + release_group))
|
||||
equations.append(Eq(imdb_id, hash))
|
||||
equations.append(Eq(resolution, video_codec))
|
||||
equations.append(Eq(video_codec, 2 * audio_codec))
|
||||
equations.append(Eq(format, video_codec + audio_codec))
|
||||
equations.append(Eq(title, resolution + video_codec + audio_codec + year + 1))
|
||||
equations.append(Eq(video_codec, 2 * audio_codec))
|
||||
equations.append(Eq(release_group, resolution + video_codec + audio_codec + 1))
|
||||
equations.append(Eq(year, release_group + 1))
|
||||
equations.append(Eq(audio_codec, 1))
|
||||
return equations
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
print(solve(get_episode_equations(), [release_group, resolution, format, video_codec, audio_codec, imdb_id,
|
||||
hash, series, tvdb_id, season, episode, title, year]))
|
||||
print(solve(get_movie_equations(), [release_group, resolution, format, video_codec, audio_codec, imdb_id,
|
||||
hash, title, year]))
|
Loading…
Add table
Add a link
Reference in a new issue