From 6c1098ef36eb3be9bccdecbdb2833bbcbca974e0 Mon Sep 17 00:00:00 2001 From: Seraphys Date: Tue, 19 May 2026 13:46:20 -0500 Subject: [PATCH] Create Movie/Series Version CFs --- ops/17.create-movie-series-version-cfs.sql | 501 +++++++++++++++++++++ 1 file changed, 501 insertions(+) create mode 100644 ops/17.create-movie-series-version-cfs.sql diff --git a/ops/17.create-movie-series-version-cfs.sql b/ops/17.create-movie-series-version-cfs.sql new file mode 100644 index 0000000..19facb1 --- /dev/null +++ b/ops/17.create-movie-series-version-cfs.sql @@ -0,0 +1,501 @@ +-- @operation: export +-- @entity: batch +-- @name: Create Movie/Series Version CFs +-- @exportedAt: 2026-05-19T18:46:19.066Z +-- @opIds: 10091, 10092, 10093, 10094, 10095, 10096, 10097, 10098, 10099, 10100, 10101, 10102, 10103, 10104, 10105, 10106, 10107, 10108, 10109, 10110, 10111, 10112, 10113, 10114, 10115, 10116, 10117, 10118, 10119, 10120, 10121, 10122, 10123, 10124, 10125, 10126, 10127, 10128, 10129, 10130, 10131, 10132, 10133, 10134, 10135, 10136, 10137, 10138, 10139, 10140, 10141, 10142, 10143, 10144, 10145, 10146, 10147, 10148, 10149, 10150, 10151, 10152, 10153, 10154, 10155, 10156, 10157, 10158, 10159, 10160, 10161, 10162, 10163, 10164, 10165, 10166, 10167, 10168, 10169, 10170, 10171, 10172, 10173, 10174, 10175 + +-- --- BEGIN op 10091 ( create regular_expression "Not Hybrid Release Group 2" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('Not Hybrid Release Group 2', '-HYBRID', NULL, NULL); +-- --- END op 10091 + +-- --- BEGIN op 10092 ( update regular_expression "Not Hybrid Release Group 2" ) +update "regular_expressions" set "pattern" = '\b(HYBRID)\b' where "name" = 'Not Hybrid Release Group 2' and "pattern" = '-HYBRID'; +-- --- END op 10092 + +-- --- BEGIN op 10093 ( create regular_expression "Hybrid" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('Hybrid', '\bhybrid(\b|\d)', NULL, NULL); +-- --- END op 10093 + +-- --- BEGIN op 10094 ( create regular_expression "Remaster" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('Remaster', 'Remaster', NULL, NULL); +-- --- END op 10094 + +-- --- BEGIN op 10095 ( create regular_expression "Not 4K Remaster" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('Not 4K Remaster', '4K', NULL, NULL); +-- --- END op 10095 + +-- --- BEGIN op 10096 ( create custom_format "Hybrid" ) +insert into "custom_formats" ("name", "description") values ('Hybrid', ''); +-- --- END op 10096 + +-- --- BEGIN op 10097 ( update custom_format "Hybrid" ) +update "custom_formats" set "description" = 'Hybrid + +A hybrid release means any combination of sources (video + audio) and not a direct encoding of a single source. Generally, you can be sure that any hybrid put together should be the best quality release of a particular title. However, not all release groups always mention that their release is a hybrid release.' where "name" = 'Hybrid' and "description" = ''; +-- --- END op 10097 + +-- --- BEGIN op 10098 ( update custom_format "Hybrid" ) +insert into "tags" ("name") values ('Movie Versions') on conflict ("name") do nothing; + +insert into "custom_format_tags" ("custom_format_name", "tag_name") values ('Hybrid', 'Movie Versions'); + +insert into "tags" ("name") values ('Series Versions') on conflict ("name") do nothing; + +insert into "custom_format_tags" ("custom_format_name", "tag_name") values ('Hybrid', 'Series Versions'); +-- --- END op 10098 + +-- --- BEGIN op 10099 ( update custom_format "Hybrid" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Hybrid', 'Remux', 'source', 'sonarr', 0, 0); + +INSERT INTO condition_sources (custom_format_name, condition_name, source) VALUES ('Hybrid', 'Remux', 'bluray_raw'); +-- --- END op 10099 + +-- --- BEGIN op 10100 ( update custom_format "Hybrid" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Hybrid', 'Bluray', 'source', 'all', 0, 0); + +INSERT INTO condition_sources (custom_format_name, condition_name, source) VALUES ('Hybrid', 'Bluray', 'bluray'); +-- --- END op 10100 + +-- --- BEGIN op 10101 ( update custom_format "Hybrid" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Hybrid', 'Not Hybrid Release Group', 'release_group', 'all', 1, 1); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('Hybrid', 'Not Hybrid Release Group', 'Not Hybrid Release Group 2'); +-- --- END op 10101 + +-- --- BEGIN op 10102 ( update custom_format "Hybrid" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Hybrid', 'Hybrid', 'release_title', 'all', 0, 0); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('Hybrid', 'Hybrid', 'Hybrid'); +-- --- END op 10102 + +-- --- BEGIN op 10103 ( create custom_format "Remaster" ) +insert into "custom_formats" ("name", "description") values ('Remaster', ''); +-- --- END op 10103 + +-- --- BEGIN op 10104 ( update custom_format "Remaster" ) +update "custom_formats" set "description" = 'Remaster + +From Wikipedia, the free encyclopedia + +For the software term, see Software remastering. Remaster (also digital remastering and digitally remastered) refers to changing the quality of the sound or of the image, or both, of previously created recordings, either audiophonic, cinematic, or videographic.' where "name" = 'Remaster' and "description" = ''; +-- --- END op 10104 + +-- --- BEGIN op 10105 ( update custom_format "Remaster" ) +insert into "tags" ("name") values ('Movie Versions') on conflict ("name") do nothing; + +insert into "custom_format_tags" ("custom_format_name", "tag_name") values ('Remaster', 'Movie Versions'); + +insert into "tags" ("name") values ('Series Versions') on conflict ("name") do nothing; + +insert into "custom_format_tags" ("custom_format_name", "tag_name") values ('Remaster', 'Series Versions'); +-- --- END op 10105 + +-- --- BEGIN op 10106 ( update custom_format "Remaster" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Remaster', 'Remaster', 'release_title', 'all', 0, 0); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('Remaster', 'Remaster', 'Remaster'); +-- --- END op 10106 + +-- --- BEGIN op 10107 ( update custom_format "Remaster" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('Remaster', 'Not 4K Remaster', 'release_title', 'all', 1, 1); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('Remaster', 'Not 4K Remaster', 'Not 4K Remaster'); +-- --- END op 10107 + +-- --- BEGIN op 10108 ( create custom_format "4K Remaster" ) +insert into "custom_formats" ("name", "description") values ('4K Remaster', ''); +-- --- END op 10108 + +-- --- BEGIN op 10109 ( update custom_format "4K Remaster" ) +update "custom_formats" set "description" = '4K Remaster + +A remastered or mastered in 4K should give you usually the best picture and audio currently for the movie. Both are just names to describe the best possible current release of the movie. + +To be clear, the final digital films on the Mastered in 4K Blu-rays still only have the same 1920 x 1080 pixels of actual resolution as normal Blu-rays. But the argument goes that because these full HD files were derived from higher-resolution masters, their images will be more precise, with better colors, less noise, and enhanced sharpness and detail. Not least because the higher-resolution mastering process will provide more detail from the original print for the Blu-ray masters to draw on when going through their (hopefully…) frame-by-frame compression process. + +Another important element of the Mastered in 4K discs is that they’re all mastered with ‘x.v.YCC’ color specification. This delivers an expanded color range closer to that contained in source material.' where "name" = '4K Remaster' and "description" = ''; +-- --- END op 10109 + +-- --- BEGIN op 10110 ( update custom_format "4K Remaster" ) +insert into "tags" ("name") values ('Movie Versions') on conflict ("name") do nothing; + +insert into "custom_format_tags" ("custom_format_name", "tag_name") values ('4K Remaster', 'Movie Versions'); +-- --- END op 10110 + +-- --- BEGIN op 10111 ( update custom_format "4K Remaster" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('4K Remaster', 'Remaster', 'release_title', 'radarr', 0, 1); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('4K Remaster', 'Remaster', 'Remaster'); +-- --- END op 10111 + +-- --- BEGIN op 10112 ( create regular_expression "4K" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('4K', '4k', NULL, NULL); +-- --- END op 10112 + +-- --- BEGIN op 10113 ( update custom_format "4K Remaster" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('4K Remaster', '4K', 'release_title', 'radarr', 0, 1); + +INSERT INTO condition_patterns (custom_format_name, condition_name, regular_expression_name) VALUES ('4K Remaster', '4K', '4K'); +-- --- END op 10113 + +-- --- BEGIN op 10114 ( update custom_format "4K Remaster" ) +INSERT INTO custom_format_conditions (custom_format_name, name, type, arr_type, negate, required) +VALUES ('4K Remaster', 'Not 4K Resolution', 'resolution', 'radarr', 1, 1); + +INSERT INTO condition_resolutions (custom_format_name, condition_name, resolution) VALUES ('4K Remaster', 'Not 4K Resolution', '2160p'); +-- --- END op 10114 + +-- --- BEGIN op 10115 ( create regular_expression "Criterion" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('Criterion', '\b(Criterion)\b', NULL, NULL); +-- --- END op 10115 + +-- --- BEGIN op 10116 ( create regular_expression "CC" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('CC', '\b(CC)\b', NULL, NULL); +-- --- END op 10116 + +-- --- BEGIN op 10117 ( create regular_expression "IMAX" ) +insert into "regular_expressions" ("name", "pattern", "description", "regex101_id") values ('IMAX', '\b((?