From a89c98ee42612ef8741aa93352865ebc3a9a523a Mon Sep 17 00:00:00 2001 From: Rato Date: Sun, 26 Feb 2017 17:33:13 +0100 Subject: [PATCH 01/24] Detecting ALTERNATIVE CUT --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 2 ++ guessit/test/episodes.yml | 13 +++++++++++++ guessit/test/movies.yml | 17 +++++++++++++++++ guessit/test/rules/other.yml | 6 ++++++ 5 files changed, 39 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 6ce5833..a2a8748 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -256,5 +256,5 @@ Other properties - ``Fansub``, ``HR``, ``HQ``, ``Screener``, ``Unrated``, ``HD``, ``UltraHD``, ``3D``, ``SyncFix``, ``Bonus``, ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, - ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles`` + ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index fd85204..ce684f0 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -76,6 +76,8 @@ def other(): for value in ('Limited', 'Complete', 'Classic', 'Unrated', 'LiNE', 'Bonus', 'Trailer', 'FINAL', 'Retail', 'Uncut', 'Extended', 'Extended Cut'): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) + rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) + rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('VO', 'OV', value='OV', tags='has-neighbor') diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 479c481..6a7c2a5 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3649,3 +3649,16 @@ season: 1 episode: 50 type: episode + +? Star.Wars.Rebels.S01E01.Spark.of.Rebellion.ALTERNATE.CUT.HDTV.x264-W4F.mp4 +: title: Star Wars Rebels + season: 1 + episode: 1 + episode_title: Spark of Rebellion + other: Alternative Cut + format: HDTV + video_codec: h264 + release_group: W4F + container: mp4 + type: episode + diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 19854fc..0f11e66 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -902,3 +902,20 @@ audio_channels: '7.1' release_group: DDR type: movie + +? Queen - A Kind of Magic (Alternative Extended Version) 2CD 2014 +: title: Queen + alternative_title: A Kind of Magic + other: [Alternative Cut, Extended] + cd_count: 2 + year: 2014 + type: movie + +? Jour.de.Fete.1949.ALTERNATiVE.CUT.1080p.BluRay.x264-SADPANDA[rarbg] +: title: Jour de Fete + year: 1949 + other: Alternative Cut + screen_size: 1080p + format: BluRay + video_codec: h264 + release_group: SADPANDA[rarbg] diff --git a/guessit/test/rules/other.yml b/guessit/test/rules/other.yml index 9ee902b..2890a2b 100644 --- a/guessit/test/rules/other.yml +++ b/guessit/test/rules/other.yml @@ -144,3 +144,9 @@ ? re-encoded ? reencoded : other: ReEncoded + +? Super Movie Alternate XViD +? Super Movie Alternative XViD +? Super Movie Alternate Cut XViD +? Super Movie Alternative Cut XViD +: other: Alternative Cut From 2c1df3ab813f956baf546309efca53a61e86b40b Mon Sep 17 00:00:00 2001 From: Rato Date: Sun, 26 Feb 2017 17:33:47 +0100 Subject: [PATCH 02/24] Detecting season in dutch --- guessit/rules/properties/episodes.py | 2 +- guessit/test/episodes.yml | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/guessit/rules/properties/episodes.py b/guessit/rules/properties/episodes.py index 1fb87f3..9cd257d 100644 --- a/guessit/rules/properties/episodes.py +++ b/guessit/rules/properties/episodes.py @@ -77,7 +77,7 @@ def episodes(): season_episode_seps.extend(seps) season_episode_seps.extend(['x', 'X', 'e', 'E']) - season_words = ['season', 'saison', 'serie', 'seasons', 'saisons', 'series', + season_words = ['season', 'saison', 'seizoen', 'serie', 'seasons', 'saisons', 'series', 'tem', 'temp', 'temporada', 'temporadas', 'stagione'] episode_words = ['episode', 'episodes', 'eps', 'ep', 'episodio', 'episodios', 'capitulo', 'capitulos'] diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 6a7c2a5..78b8c44 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3650,6 +3650,14 @@ episode: 50 type: episode +? Vikings.Seizoen.4.1080p.Web.NLsubs +: title: Vikings + season: 4 + screen_size: 1080p + format: WEB-DL + subtitle_language: nl + type: episode + ? Star.Wars.Rebels.S01E01.Spark.of.Rebellion.ALTERNATE.CUT.HDTV.x264-W4F.mp4 : title: Star Wars Rebels season: 1 From 7721986d94ffbe7821d1188a13ebeb5f6953e613 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 19:37:09 +0100 Subject: [PATCH 03/24] Detecting CONVERT --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/movies.yml | 9 +++++++++ guessit/test/rules/other.yml | 3 +++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index a2a8748..08ac3e1 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -256,5 +256,5 @@ Other properties - ``Fansub``, ``HR``, ``HQ``, ``Screener``, ``Unrated``, ``HD``, ``UltraHD``, ``3D``, ``SyncFix``, ``Bonus``, ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, - ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles`` + ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index ce684f0..1402156 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -78,6 +78,7 @@ def other(): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) + rebulk.string('CONVERT', value='Converted', tags='has-neighbor') rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('VO', 'OV', value='OV', tags='has-neighbor') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 0f11e66..dee6122 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -919,3 +919,12 @@ format: BluRay video_codec: h264 release_group: SADPANDA[rarbg] + +? The.Movie.CONVERT.720p.HDTV.x264-C4TV +: title: The Movie + other: Converted + screen_size: 720p + format: HDTV + video_codec: h264 + release_group: C4TV + type: movie diff --git a/guessit/test/rules/other.yml b/guessit/test/rules/other.yml index 2890a2b..1d90f62 100644 --- a/guessit/test/rules/other.yml +++ b/guessit/test/rules/other.yml @@ -150,3 +150,6 @@ ? Super Movie Alternate Cut XViD ? Super Movie Alternative Cut XViD : other: Alternative Cut + +? CONVERT XViD +: other: Converted \ No newline at end of file From 239383fe7a752b3796c67dca28e715a62919d048 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 19:49:15 +0100 Subject: [PATCH 04/24] Detecting COLORIZED --- docs/properties.rst | 3 ++- guessit/rules/properties/other.py | 2 +- guessit/test/movies.yml | 10 ++++++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/properties.rst b/docs/properties.rst index 08ac3e1..dd62bbd 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -256,5 +256,6 @@ Other properties - ``Fansub``, ``HR``, ``HQ``, ``Screener``, ``Unrated``, ``HD``, ``UltraHD``, ``3D``, ``SyncFix``, ``Bonus``, ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, - ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted`` + ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, + ``Colorized`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 1402156..a1cf379 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -74,7 +74,7 @@ def other(): tags=['streaming_service.prefix', 'streaming_service.suffix']) for value in ('Limited', 'Complete', 'Classic', 'Unrated', 'LiNE', 'Bonus', 'Trailer', 'FINAL', 'Retail', 'Uncut', - 'Extended', 'Extended Cut'): + 'Extended', 'Extended Cut', 'Colorized'): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index dee6122..69cf7e8 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -928,3 +928,13 @@ video_codec: h264 release_group: C4TV type: movie + +? Its.A.Wonderful.Life.1946.Colorized.720p.BRRip.999MB.MkvCage.com +: title: Its A Wonderful Life + year: 1946 + other: Colorized + screen_size: 720p + format: BluRay + size: 999MB + website: MkvCage.com + type: movie \ No newline at end of file From caa6b7656279b6c3e691f5624dde5cac0883b3d7 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 19:49:39 +0100 Subject: [PATCH 05/24] Enhancing Director's cut detection --- guessit/rules/properties/edition.py | 3 ++- guessit/test/episodes.yml | 15 +++++++++++++++ guessit/test/movies.yml | 19 ++++++++++++++++++- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/guessit/rules/properties/edition.py b/guessit/rules/properties/edition.py index 429ba8d..abb42e7 100644 --- a/guessit/rules/properties/edition.py +++ b/guessit/rules/properties/edition.py @@ -26,6 +26,7 @@ def edition(): else '__default__') rebulk.regex('criterion-edition', 'edition-criterion', value='Criterion Edition') rebulk.regex('deluxe', 'deluxe-edition', 'edition-deluxe', value='Deluxe Edition') - rebulk.regex('director\'?s?-cut', 'director\'?s?-cut-edition', 'edition-director\'?s?-cut', value='Director\'s cut') + rebulk.regex(r"director'?s?-cut", r"director'?s?-cut-edition", r"edition-director'?s?-cut", 'DC', + value="Director's cut") return rebulk diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 78b8c44..5113d50 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3670,3 +3670,18 @@ container: mp4 type: episode +? DCs.Legends.of.Tomorrow.S02E12.HDTV.XviD-FUM +: title: DCs Legends of Tomorrow + season: 2 + episode: 12 + format: HDTV + video_codec: XviD + release_group: FUM + type: episode + +? DC's Legends of Tomorrow 2016 - S02E02 +: title: DC's Legends of Tomorrow + year: 2016 + season: 2 + episode: 2 + type: episode diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 69cf7e8..2433bbe 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -937,4 +937,21 @@ format: BluRay size: 999MB website: MkvCage.com - type: movie \ No newline at end of file + type: movie + +? Alien DC (1979) [1080p] +: title: Alien + edition: Director's cut + year: 1979 + screen_size: 1080p + type: movie + +? Requiem.For.A.Dream.2000.DC.1080p.BluRay.x264.anoXmous +: title: Requiem For A Dream + year: 2000 + edition: Director's cut + screen_size: 1080p + format: BluRay + video_codec: h264 + release_group: anoXmous + type: movie From 5a484d29213230ed14266ac08c126b6e908184d7 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:29:57 +0100 Subject: [PATCH 06/24] Detecting DIRFIX --- guessit/rules/properties/other.py | 2 +- guessit/test/episodes.yml | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index a1cf379..b30ceba 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -31,7 +31,7 @@ def other(): rebulk.regex('Re-?Enc(?:oded)?', value='ReEncoded') rebulk.string('Real', 'Fix', 'Fixed', value='Proper', tags=['has-neighbor-before', 'has-neighbor-after']) - rebulk.string('Proper', 'Repack', 'Rerip', value='Proper') + rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', value='Proper') rebulk.string('Fansub', value='Fansub', tags='has-neighbor') rebulk.string('Fastsub', value='Fastsub', tags='has-neighbor') diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 5113d50..894d66d 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3685,3 +3685,14 @@ season: 2 episode: 2 type: episode + +? Broadchurch.S01.DIRFIX.720p.BluRay.x264-SHORTBREHD +: title: Broadchurch + season: 1 + other: Proper + screen_size: 720p + format: BluRay + video_codec: h264 + release_group: SHORTBREHD + proper_count: 1 + type: episode From 24269985a1b0eaf3d845817a1008fbac78e12951 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:38:43 +0100 Subject: [PATCH 07/24] Detecting Documentary --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/movies.yml | 12 ++++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index dd62bbd..26f3c1a 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized`` + ``Colorized``, ``Documentary`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index b30ceba..0b650c7 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -79,6 +79,7 @@ def other(): rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('CONVERT', value='Converted', tags='has-neighbor') + rebulk.string('DOCU', value='Documentary', tags='has-neighbor') rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('VO', 'OV', value='OV', tags='has-neighbor') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 2433bbe..dd35d86 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -955,3 +955,15 @@ video_codec: h264 release_group: anoXmous type: movie + +? Before.the.Flood.2016.DOCU.1080p.WEBRip.x264.DD5.1-FGT +: title: Before the Flood + year: 2016 + other: Documentary + screen_size: 1080p + format: WEBRip + video_codec: h264 + audio_codec: DolbyDigital + audio_channels: '5.1' + release_group: FGT + type: movie From 788d4b4bd0b9de5dd1c2a5094aa772bc6a5fb459 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:39:02 +0100 Subject: [PATCH 08/24] Adding DUB test scenario --- guessit/test/movies.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index dd35d86..c59b198 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -967,3 +967,12 @@ audio_channels: '5.1' release_group: FGT type: movie + +? Zootopia.2016.HDRip.1.46Gb.Dub.MegaPeer +: title: Zootopia + year: 2016 + format: HDTV + size: 1.46GB + language: und + release_group: MegaPeer + type: movie From 660c99f12f77a186add402bdfca8cacfe24e8ac5 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:54:51 +0100 Subject: [PATCH 09/24] Detecting FESTIVAL --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/episodes.yml | 7 +++++++ guessit/test/movies.yml | 9 +++++++++ 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 26f3c1a..157a775 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary`` + ``Colorized``, ``Documentary``, ``Festival`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 0b650c7..542e157 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -80,6 +80,7 @@ def other(): rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('CONVERT', value='Converted', tags='has-neighbor') rebulk.string('DOCU', value='Documentary', tags='has-neighbor') + rebulk.string('Festival', value='Festival', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('VO', 'OV', value='OV', tags='has-neighbor') diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 894d66d..c5bf5b6 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3696,3 +3696,10 @@ release_group: SHORTBREHD proper_count: 1 type: episode + +? Simply Red - 2016-07-08 Montreux Jazz Festival 720p +: title: Simply Red + date: 2016-07-08 + episode_title: Montreux Jazz Festival + screen_size: 720p + type: episode diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index c59b198..9c7c357 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -976,3 +976,12 @@ language: und release_group: MegaPeer type: movie + +? Suntan.2016.FESTiVAL.DVDRip.x264-IcHoR +: title: Suntan + year: 2016 + other: Festival + format: DVD + video_codec: h264 + release_group: IcHoR + type: movie From 8bf5c4eab3043e3c9873a4a9c6f08417ce592cd9 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:55:06 +0100 Subject: [PATCH 10/24] Updating FINAL documentation --- docs/properties.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 157a775..1a55b8b 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL`` From f7168351ef3200f71e86158edd0ee3bc147f3208 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 20:59:39 +0100 Subject: [PATCH 11/24] Detecting INTERNAL --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 2 +- guessit/test/episodes.yml | 22 +++++++++++++++++++++- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/docs/properties.rst b/docs/properties.rst index 1a55b8b..770162e 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival``, ``FINAL`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 542e157..d087653 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -74,7 +74,7 @@ def other(): tags=['streaming_service.prefix', 'streaming_service.suffix']) for value in ('Limited', 'Complete', 'Classic', 'Unrated', 'LiNE', 'Bonus', 'Trailer', 'FINAL', 'Retail', 'Uncut', - 'Extended', 'Extended Cut', 'Colorized'): + 'Extended', 'Extended Cut', 'Colorized', 'Internal'): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index c5bf5b6..5da29ba 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -1775,7 +1775,8 @@ : episode: 11 episode_title: Our Man in Damascus format: HDTV - release_group: iNTERNAL-BaCKToRG + other: Internal + release_group: BaCKToRG screen_size: 720p season: 5 subtitle_language: de @@ -3703,3 +3704,22 @@ episode_title: Montreux Jazz Festival screen_size: 720p type: episode + +? Ridiculousness.S07E14.iNTERNAL.HDTV.x264-YesTV +: title: Ridiculousness + season: 7 + episode: 14 + other: Internal + format: HDTV + video_codec: h264 + release_group: YesTV + type: episode + +? Stephen.Colbert.2016.05.25.James.McAvoy.iNTERNAL.XviD-AFG +: title: Stephen Colbert + date: 2016-05-25 + episode_title: James McAvoy + other: Internal + video_codec: XviD + release_group: AFG + type: episode From 9cf2655eec9e4a01123935e818597cb04407a158 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 21:16:25 +0100 Subject: [PATCH 12/24] Detecting NFOFIX --- guessit/rules/properties/other.py | 3 ++- guessit/rules/properties/streaming_service.py | 1 + guessit/test/movies.yml | 11 +++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index d087653..793cdbb 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -31,7 +31,8 @@ def other(): rebulk.regex('Re-?Enc(?:oded)?', value='ReEncoded') rebulk.string('Real', 'Fix', 'Fixed', value='Proper', tags=['has-neighbor-before', 'has-neighbor-after']) - rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', value='Proper') + rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', 'Nfofix', value='Proper', + tags=['streaming_service.prefix', 'streaming_service.suffix']) rebulk.string('Fansub', value='Fansub', tags='has-neighbor') rebulk.string('Fastsub', value='Fastsub', tags='has-neighbor') diff --git a/guessit/rules/properties/streaming_service.py b/guessit/rules/properties/streaming_service.py index b31690d..43ea9ed 100644 --- a/guessit/rules/properties/streaming_service.py +++ b/guessit/rules/properties/streaming_service.py @@ -64,6 +64,7 @@ def streaming_service(): rebulk.string('TV3', value='TV3 Ireland') rebulk.string('TV4', value='TV4 Sweeden') rebulk.string('TVL', 'TVLand', 'TV Land', value='TV Land') + rebulk.string('STV', value='STV Player') rebulk.string('UFC', value='UFC') rebulk.string('USAN', value='USA Network') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 9c7c357..2fd9444 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -985,3 +985,14 @@ video_codec: h264 release_group: IcHoR type: movie + +? Hardwired.STV.NFOFiX.FRENCH.DVDRiP.XviD-SURViVAL +: title: Hardwired + streaming_service: STV Player + other: Proper + language: french + format: DVD + video_codec: XviD + release_group: SURViVAL + proper_count: 1 + type: movie From 3892b73e60ccbbbdf3320377c5b9888ee64f3e4c Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 21:46:14 +0100 Subject: [PATCH 13/24] Detecting Open Matte --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/movies.yml | 16 ++++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 770162e..5a6577b 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 793cdbb..f752a20 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -81,6 +81,7 @@ def other(): rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) rebulk.string('CONVERT', value='Converted', tags='has-neighbor') rebulk.string('DOCU', value='Documentary', tags='has-neighbor') + rebulk.string('OM', value='Open Matte', tags='has-neighbor') rebulk.string('Festival', value='Festival', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 2fd9444..9c4d472 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -996,3 +996,19 @@ release_group: SURViVAL proper_count: 1 type: movie + +? Maze.Runner.The.Scorch.Trials.OM.2015.WEB-DLRip.by.Seven +: title: Maze Runner The Scorch Trials + other: Open Matte + year: 2015 + format: WEBRip + release_group: Seven + type: movie + +? Kampen Om Tungtvannet aka The Heavy Water War COMPLETE 720p x265 HEVC-Lund +: title: Kampen Om Tungtvannet aka The Heavy Water War + other: Complete + screen_size: 720p + video_codec: h265 + release_group: Lund + type: movie From 1cc067fe5dff09fcebe651c2eaa64d1a72b1c067 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 21:53:38 +0100 Subject: [PATCH 14/24] Detecting PROOFFIX --- guessit/rules/properties/other.py | 2 +- guessit/test/movies.yml | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index f752a20..974cee4 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -31,7 +31,7 @@ def other(): rebulk.regex('Re-?Enc(?:oded)?', value='ReEncoded') rebulk.string('Real', 'Fix', 'Fixed', value='Proper', tags=['has-neighbor-before', 'has-neighbor-after']) - rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', 'Nfofix', value='Proper', + rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', 'Nfofix', 'Prooffix', value='Proper', tags=['streaming_service.prefix', 'streaming_service.suffix']) rebulk.string('Fansub', value='Fansub', tags='has-neighbor') rebulk.string('Fastsub', value='Fastsub', tags='has-neighbor') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 9c4d472..3f6347a 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1012,3 +1012,11 @@ video_codec: h265 release_group: Lund type: movie + +? All.Fall.Down.x264.PROOFFIX-OUTLAWS +: title: All Fall Down + video_codec: h264 + other: Proper + release_group: OUTLAWS + proper_count: 1 + type: movie From d678e4a57dc2e1e9c734ec8b02656e3ac8d7017a Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:08:47 +0100 Subject: [PATCH 15/24] Detecting READNFO --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/episodes.yml | 22 ++++++++++++++++++++++ guessit/test/movies.yml | 8 ++++---- 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/docs/properties.rst b/docs/properties.rst index 5a6577b..461dac3 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 974cee4..80a674e 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -79,6 +79,7 @@ def other(): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) + rebulk.regex('Read-?NFO', value='Read NFO') rebulk.string('CONVERT', value='Converted', tags='has-neighbor') rebulk.string('DOCU', value='Documentary', tags='has-neighbor') rebulk.string('OM', value='Open Matte', tags='has-neighbor') diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 5da29ba..bded5d8 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3723,3 +3723,25 @@ video_codec: XviD release_group: AFG type: episode + +? The.100.S01E13.iNTERNAL.READNFO.720p.HDTV.x264-2HD +: title: The 100 + season: 1 + episode: 13 + other: [Internal, Read NFO] + screen_size: 720p + format: HDTV + video_codec: h264 + release_group: 2HD + type: episode + +? The.100.S01E13.READ.NFO.720p.HDTV.x264-2HD +: title: The 100 + season: 1 + episode: 13 + other: Read NFO + screen_size: 720p + format: HDTV + video_codec: h264 + release_group: 2HD + type: episode diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 3f6347a..0ba06b7 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -458,28 +458,28 @@ - French - English format: DVD - other: NTSC + other: [Read NFO, NTSC] ? Immersion.French.2011.STV.READNFO.QC.FRENCH.NTSC.DVDR.nfo : title: Immersion French year: 2011 language: French format: DVD - other: NTSC + other: [Read NFO, NTSC] ? Immersion.French.2011.STV.READNFO.QC.NTSC.DVDR.nfo : title: Immersion language: French year: 2011 format: DVD - other: NTSC + other: [Read NFO, NTSC] ? French.Immersion.2011.STV.READNFO.QC.ENGLISH.NTSC.DVDR.nfo : title: French Immersion year: 2011 language: ENGLISH format: DVD - other: NTSC + other: [Read NFO, NTSC] ? Howl's_Moving_Castle_(2004)_[720p,HDTV,x264,DTS]-FlexGet.avi : video_codec: h264 From 39a04597f0d5c3678eee8555d43bd4d320ad9abc Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:14:40 +0100 Subject: [PATCH 16/24] Detecting SAMPLEFIX --- guessit/rules/properties/other.py | 2 ++ guessit/test/episodes.yml | 11 +++++++++++ guessit/test/movies.yml | 9 +++++++++ 3 files changed, 22 insertions(+) diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 80a674e..08c7785 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -33,6 +33,8 @@ def other(): rebulk.string('Real', 'Fix', 'Fixed', value='Proper', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Proper', 'Repack', 'Rerip', 'Dirfix', 'Nfofix', 'Prooffix', value='Proper', tags=['streaming_service.prefix', 'streaming_service.suffix']) + rebulk.regex('(?:Proof-?)?Sample-?Fix', value='Proper', + tags=['streaming_service.prefix', 'streaming_service.suffix']) rebulk.string('Fansub', value='Fansub', tags='has-neighbor') rebulk.string('Fastsub', value='Fastsub', tags='has-neighbor') diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index bded5d8..5c0ecd9 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3745,3 +3745,14 @@ video_codec: h264 release_group: 2HD type: episode + +? Dr.Ken.S01E21.SAMPLEFIX.720p.HDTV.x264-SVA +: title: Dr Ken + season: 1 + episode: 21 + other: Proper + screen_size: 720p + format: HDTV + video_codec: h264 + release_group: SVA + type: episode diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 0ba06b7..417f0df 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1020,3 +1020,12 @@ release_group: OUTLAWS proper_count: 1 type: movie + +? The.Last.Survivors.2014.PROOF.SAMPLE.FiX.BDRip.x264-TOPCAT +: title: The Last Survivors + year: 2014 + other: Proper + format: BluRay + video_codec: h264 + release_group: TOPCAT + type: movie From e8c2b8fcd4702f5e36458114d3627bdbf1d08c66 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:35:39 +0100 Subject: [PATCH 17/24] Detecting Theatrical Edition --- docs/properties.rst | 2 +- guessit/rules/properties/edition.py | 1 + guessit/test/movies.yml | 26 ++++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 461dac3..9735a41 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -234,7 +234,7 @@ Other properties Edition of the movie. - - ``Special Edition``, ``Collector Edition``, ``Director's cut``, ``Criterion Edition``, ``Deluxe Edition`` + - ``Special Edition``, ``Collector Edition``, ``Director's cut``, ``Criterion Edition``, ``Deluxe Edition``, ``Theatrical Edition`` - **film** diff --git a/guessit/rules/properties/edition.py b/guessit/rules/properties/edition.py index abb42e7..18485d9 100644 --- a/guessit/rules/properties/edition.py +++ b/guessit/rules/properties/edition.py @@ -26,6 +26,7 @@ def edition(): else '__default__') rebulk.regex('criterion-edition', 'edition-criterion', value='Criterion Edition') rebulk.regex('deluxe', 'deluxe-edition', 'edition-deluxe', value='Deluxe Edition') + rebulk.regex(r'theatrical-cut', r'theatrical-edition', r'theatrical', value='Theatrical Edition') rebulk.regex(r"director'?s?-cut", r"director'?s?-cut-edition", r"edition-director'?s?-cut", 'DC', value="Director's cut") diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 417f0df..113e18f 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1029,3 +1029,29 @@ video_codec: h264 release_group: TOPCAT type: movie + +? Bad Santa 2 2016 THEATRiCAL FRENCH BDRip XviD-EXTREME +: title: Bad Santa 2 + year: 2016 + edition: Theatrical Edition + language: french + format: BluRay + video_codec: XviD + release_group: EXTREME + type: movie + +? The Lord of the Rings The Fellowship of the Ring THEATRICAL EDITION (2001) [1080p] +: title: The Lord of the Rings The Fellowship of the Ring + edition: Theatrical Edition + year: 2001 + screen_size: 1080p + type: movie + +? World War Z (2013) Theatrical Cut 720p BluRay x264 +: title: World War Z + year: 2013 + edition: Theatrical Edition + screen_size: 720p + format: BluRay + video_codec: h264 + type: movie From 01cf05d7088aaf341759ecda89a2922cadcc2c3c Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:40:22 +0100 Subject: [PATCH 18/24] Detecting UNCENSORED --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 2 +- guessit/test/episodes.yml | 9 +++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docs/properties.rst b/docs/properties.rst index 9735a41..9bea52e 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,5 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO``, ``Uncensored`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 08c7785..8b5ec5e 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -77,7 +77,7 @@ def other(): tags=['streaming_service.prefix', 'streaming_service.suffix']) for value in ('Limited', 'Complete', 'Classic', 'Unrated', 'LiNE', 'Bonus', 'Trailer', 'FINAL', 'Retail', 'Uncut', - 'Extended', 'Extended Cut', 'Colorized', 'Internal'): + 'Extended', 'Extended Cut', 'Colorized', 'Internal', 'Uncensored'): rebulk.string(value, value=value, tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Extended-?version', value='Extended', tags=['has-neighbor', 'release-group-prefix']) rebulk.regex('Alternat(e|ive)(?:-?Cut)?', value='Alternative Cut', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 5c0ecd9..34389d2 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3756,3 +3756,12 @@ video_codec: h264 release_group: SVA type: episode + +? Rick and Morty Season 1 [UNCENSORED] [BDRip] [1080p] [HEVC] +: title: Rick and Morty + season: 1 + other: Uncensored + format: BluRay + screen_size: 1080p + video_codec: h265 + type: episode From 24dc2373114f16047c7e2e08847266531aee0c38 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:42:20 +0100 Subject: [PATCH 19/24] Adding UNCUT test scenario --- guessit/test/movies.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 113e18f..0222bc5 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1055,3 +1055,12 @@ format: BluRay video_codec: h264 type: movie + +? The Heartbreak Kid (1993) UNCUT 720p WEBRip x264 +: title: The Heartbreak Kid + year: 1993 + other: Uncut + screen_size: 720p + format: WEBRip + video_codec: h264 + type: movie From fe7bed00e9cf10de644e935cbb070c5ab7ee5273 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 22:56:35 +0100 Subject: [PATCH 20/24] Fix STV detection - Straight to Video --- docs/properties.rst | 3 ++- guessit/rules/properties/other.py | 1 + guessit/rules/properties/streaming_service.py | 1 - guessit/test/movies.yml | 11 +++++------ 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/properties.rst b/docs/properties.rst index 9bea52e..62ef5e1 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -257,5 +257,6 @@ Other properties ``WideScreen``, ``Fastsub``, ``R5``, ``AudioFix``, ``DDC``, ``Trailer``, ``Complete``, ``Limited``, ``Classic``, ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, - ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO``, ``Uncensored`` + ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO``, ``Uncensored``, + ``Straight to Video`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 8b5ec5e..1caa140 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -85,6 +85,7 @@ def other(): rebulk.string('CONVERT', value='Converted', tags='has-neighbor') rebulk.string('DOCU', value='Documentary', tags='has-neighbor') rebulk.string('OM', value='Open Matte', tags='has-neighbor') + rebulk.string('STV', value='Straight to Video', tags='has-neighbor') rebulk.string('Festival', value='Festival', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/rules/properties/streaming_service.py b/guessit/rules/properties/streaming_service.py index 43ea9ed..b31690d 100644 --- a/guessit/rules/properties/streaming_service.py +++ b/guessit/rules/properties/streaming_service.py @@ -64,7 +64,6 @@ def streaming_service(): rebulk.string('TV3', value='TV3 Ireland') rebulk.string('TV4', value='TV4 Sweeden') rebulk.string('TVL', 'TVLand', 'TV Land', value='TV Land') - rebulk.string('STV', value='STV Player') rebulk.string('UFC', value='UFC') rebulk.string('USAN', value='USA Network') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 0222bc5..e4e9166 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -458,28 +458,28 @@ - French - English format: DVD - other: [Read NFO, NTSC] + other: [Straight to Video, Read NFO, NTSC] ? Immersion.French.2011.STV.READNFO.QC.FRENCH.NTSC.DVDR.nfo : title: Immersion French year: 2011 language: French format: DVD - other: [Read NFO, NTSC] + other: [Straight to Video, Read NFO, NTSC] ? Immersion.French.2011.STV.READNFO.QC.NTSC.DVDR.nfo : title: Immersion language: French year: 2011 format: DVD - other: [Read NFO, NTSC] + other: [Straight to Video, Read NFO, NTSC] ? French.Immersion.2011.STV.READNFO.QC.ENGLISH.NTSC.DVDR.nfo : title: French Immersion year: 2011 language: ENGLISH format: DVD - other: [Read NFO, NTSC] + other: [Straight to Video, Read NFO, NTSC] ? Howl's_Moving_Castle_(2004)_[720p,HDTV,x264,DTS]-FlexGet.avi : video_codec: h264 @@ -988,8 +988,7 @@ ? Hardwired.STV.NFOFiX.FRENCH.DVDRiP.XviD-SURViVAL : title: Hardwired - streaming_service: STV Player - other: Proper + other: [Straight to Video, Proper] language: french format: DVD video_codec: XviD From d980f9710d97c64c540fe73a08daa383c1a33b62 Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 23:01:10 +0100 Subject: [PATCH 21/24] Detecting LIMITED --- docs/properties.rst | 2 +- guessit/rules/properties/edition.py | 1 + guessit/test/episodes.yml | 12 ++++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 62ef5e1..75800f7 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -234,7 +234,7 @@ Other properties Edition of the movie. - - ``Special Edition``, ``Collector Edition``, ``Director's cut``, ``Criterion Edition``, ``Deluxe Edition``, ``Theatrical Edition`` + - ``Special Edition``, ``Collector Edition``, ``Director's cut``, ``Criterion Edition``, ``Deluxe Edition``, ``Theatrical Edition``, ``Limited Edition`` - **film** diff --git a/guessit/rules/properties/edition.py b/guessit/rules/properties/edition.py index 18485d9..9009133 100644 --- a/guessit/rules/properties/edition.py +++ b/guessit/rules/properties/edition.py @@ -26,6 +26,7 @@ def edition(): else '__default__') rebulk.regex('criterion-edition', 'edition-criterion', value='Criterion Edition') rebulk.regex('deluxe', 'deluxe-edition', 'edition-deluxe', value='Deluxe Edition') + rebulk.regex('limited', 'limited-edition', value='Limited Edition') rebulk.regex(r'theatrical-cut', r'theatrical-edition', r'theatrical', value='Theatrical Edition') rebulk.regex(r"director'?s?-cut", r"director'?s?-cut-edition", r"edition-director'?s?-cut", 'DC', value="Director's cut") diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 34389d2..4d0126d 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3765,3 +3765,15 @@ screen_size: 1080p video_codec: h265 type: episode + +? 12.Monkeys.S01E01.LiMiTED.FRENCH.1080p.WEB-DL.H264-AUTHORiTY +: title: 12 Monkeys + season: 1 + episode: 1 + edition: Limited Edition + language: french + screen_size: 1080p + format: WEB-DL + video_codec: h264 + release_group: AUTHORiTY + type: episode From 01b6ad58db189903c9594ef1f7fc3b73553523ca Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 23:08:33 +0100 Subject: [PATCH 22/24] Detecting OAR --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 1 + guessit/test/movies.yml | 11 +++++++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index 75800f7..ef02000 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -258,5 +258,5 @@ Other properties ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO``, ``Uncensored``, - ``Straight to Video`` + ``Straight to Video``, ``Original Aspect Ratio`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 1caa140..03ea0bf 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -86,6 +86,7 @@ def other(): rebulk.string('DOCU', value='Documentary', tags='has-neighbor') rebulk.string('OM', value='Open Matte', tags='has-neighbor') rebulk.string('STV', value='Straight to Video', tags='has-neighbor') + rebulk.string('OAR', value='Original Aspect Ratio', tags='has-neighbor') rebulk.string('Festival', value='Festival', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index e4e9166..61f1542 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1063,3 +1063,14 @@ format: WEBRip video_codec: h264 type: movie + +? Mrs.Doubtfire.1993.720p.OAR.Bluray.DTS.x264-CtrlHD +: title: Mrs Doubtfire + year: 1993 + screen_size: 720p + other: Original Aspect Ratio + format: BluRay + audio_codec: DTS + video_codec: h264 + release_group: CtrlHD + type: movie From a2fb6292e92386072c342a7a227222661d50edae Mon Sep 17 00:00:00 2001 From: Rato Date: Tue, 28 Feb 2017 23:11:11 +0100 Subject: [PATCH 23/24] Enhancing Special Edition detection --- guessit/rules/properties/edition.py | 1 + guessit/test/movies.yml | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/guessit/rules/properties/edition.py b/guessit/rules/properties/edition.py index 9009133..a470f88 100644 --- a/guessit/rules/properties/edition.py +++ b/guessit/rules/properties/edition.py @@ -24,6 +24,7 @@ def edition(): conflict_solver=lambda match, other: other if other.name == 'episode_details' and other.value == 'Special' else '__default__') + rebulk.string('SE', value='Special Edition', tags='has-neighbor') rebulk.regex('criterion-edition', 'edition-criterion', value='Criterion Edition') rebulk.regex('deluxe', 'deluxe-edition', 'edition-deluxe', value='Deluxe Edition') rebulk.regex('limited', 'limited-edition', value='Limited Edition') diff --git a/guessit/test/movies.yml b/guessit/test/movies.yml index 61f1542..316a106 100644 --- a/guessit/test/movies.yml +++ b/guessit/test/movies.yml @@ -1074,3 +1074,11 @@ video_codec: h264 release_group: CtrlHD type: movie + +? Aliens.SE.1986.BDRip.1080p +: title: Aliens + edition: Special Edition + year: 1986 + format: BluRay + screen_size: 1080p + type: movie From 70900a4a45c89f687ec2af59291ab65c2850b9df Mon Sep 17 00:00:00 2001 From: Rato Date: Thu, 2 Mar 2017 00:15:13 +0100 Subject: [PATCH 24/24] Detecting WEST.FEED and EAST.FEED --- docs/properties.rst | 2 +- guessit/rules/properties/other.py | 3 ++ guessit/test/episodes.yml | 58 +++++++++++++++++++++++++++++++ 3 files changed, 62 insertions(+), 1 deletion(-) diff --git a/docs/properties.rst b/docs/properties.rst index ef02000..a1c297a 100644 --- a/docs/properties.rst +++ b/docs/properties.rst @@ -258,5 +258,5 @@ Other properties ``Proper``, ``DualAudio``, ``LiNE``, ``LD``, ``MD``, ``XXX``, ``Remastered``, ``Extended``, ``Extended Cut``, ``Alternative Cut``, ``Uncut``, ``Retail``, ``ReEncoded``, ``Mux``, ``Hardcoded Subtitles``, ``Converted``, ``Colorized``, ``Documentary``, ``Festival``, ``FINAL``, ``Internal``, ``Open Matte``, ``Read NFO``, ``Uncensored``, - ``Straight to Video``, ``Original Aspect Ratio`` + ``Straight to Video``, ``Original Aspect Ratio``, ``West Coast Feed``, ``East Coast Feed`` diff --git a/guessit/rules/properties/other.py b/guessit/rules/properties/other.py index 03ea0bf..792f4bb 100644 --- a/guessit/rules/properties/other.py +++ b/guessit/rules/properties/other.py @@ -90,6 +90,9 @@ def other(): rebulk.string('Festival', value='Festival', tags=['has-neighbor-before', 'has-neighbor-after']) rebulk.string('Complet', value='Complete', tags=['has-neighbor', 'release-group-prefix']) + for coast in ('East', 'West'): + rebulk.regex(r'(?:Live-)?(?:Episode-)?' + coast + '-?(?:Coast-)?Feed', value=coast + ' Coast Feed') + rebulk.string('VO', 'OV', value='OV', tags='has-neighbor') rebulk.regex('Scr(?:eener)?', value='Screener', validator=None, diff --git a/guessit/test/episodes.yml b/guessit/test/episodes.yml index 4d0126d..7eaf1bc 100644 --- a/guessit/test/episodes.yml +++ b/guessit/test/episodes.yml @@ -3777,3 +3777,61 @@ video_codec: h264 release_group: AUTHORiTY type: episode + +? Undateable.2014.S03E05.West.Feed.HDTV.x264-2HD +: title: Undateable + year: 2014 + season: 3 + episode: 5 + other: West Coast Feed + format: HDTV + video_codec: h264 + release_group: 2HD + type: episode + +? Undateable.2014.S02E07-E08.Live.Episode.West.Coast.Feed.HDTV.x264-2HD +: title: Undateable + year: 2014 + season: 2 + episode: [7, 8] + other: West Coast Feed + format: HDTV + video_codec: h264 + release_group: 2HD + type: episode + +? Undateable.S03E01-E02.LIVE.EAST.FEED.720p.HDTV.x264-KILLERS +: title: Undateable + season: 3 + episode: [1, 2] + other: East Coast Feed + screen_size: 720p + format: HDTV + video_codec: h264 + release_group: KILLERS + type: episode + +? Undateable.2014.S02E07.Live.Episode.East.Coast.Feed.HDTV.x264-2HD +: title: Undateable + year: 2014 + season: 2 + episode: 7 + other: East Coast Feed + format: HDTV + video_codec: h264 + release_group: 2HD + type: episode + +? Undateable.2014.S02E07.East.Coast.Feed.720p.WEB-DL.DD5.1.H.264-NTb +: title: Undateable + year: 2014 + season: 2 + episode: 7 + other: East Coast Feed + screen_size: 720p + format: WEB-DL + audio_codec: DolbyDigital + audio_channels: '5.1' + video_codec: h264 + release_group: NTb + type: episode