From eacb063164f2d8e3fcdb330419bdeac4e39de78d Mon Sep 17 00:00:00 2001 From: Samuel Chau Date: Thu, 18 Jan 2024 12:31:19 +1030 Subject: [PATCH] v0.1.1 - included guidance on importing into sonarr - added transparent profile for sonarr --- README.md | 19 +- import_cf.py => import_custom_formats.py | 0 import_qf.py => import_quality_profiles.py | 0 profiles/Transparent (Sonarr).json | 864 +++++++++++++++++++++ 4 files changed, 876 insertions(+), 7 deletions(-) rename import_cf.py => import_custom_formats.py (100%) rename import_qf.py => import_quality_profiles.py (100%) create mode 100644 profiles/Transparent (Sonarr).json diff --git a/README.md b/README.md index 3e35ee8..81edc7b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Profilarr -Profilarr is a Python-based tool that enables seamless synchronization of custom formats and quality profiles in Radarr / Sonarr. It's designed to aid users in sharing / importing custom formats & quality profiles seamlessly. +Profilarr is a Python-based tool that enables seamless synchronization of custom formats and quality profiles in Radarr / Sonarr. It's designed to aid users in sharing / importing custom formats & quality profiles seamlessly. Companion tool to Dictionarry to mass import custom formats / profiles quickly. @@ -21,7 +21,7 @@ Companion tool to Dictionarry to mass import custom formats / profiles quickly. 1. Download the Profilarr zip file from the release section. 2. Extract its contents into a folder. 3. Open `import.py` in a text editor of your choice. - - Add your Radarr API key to the designated section. + - Add your Radarr / Sonarr API key to the designated section. - Modify the Base URL if needed 4. Save the changes and close the text editor. @@ -29,8 +29,8 @@ Companion tool to Dictionarry to mass import custom formats / profiles quickly. 1. Open a terminal or command prompt. 2. Navigate to the directory where you extracted Profilarr. -3. Run the command `python import_cf.py` to import the necessary custom formats. -4. Run the command `python import_qf.py` and follow the prompts to choose and import your desired profile. +3. Run the command `python import_custom_formats.py` to import the necessary custom formats. +4. Run the command `python import_quality_profiles.py` and follow the prompts to choose and import your desired profile. ## 📦 Dependencies @@ -38,7 +38,12 @@ Companion tool to Dictionarry to mass import custom formats / profiles quickly. ## ⚙️ Configuration -### Radarr API Key and Base URL +### API Key and Base URL -- Your Radarr API Key and Base URL can be configured in the `import.py` file. -- The Base URL should be in the format `http://localhost:7878` unless you have a different host or port. +- Your API Keys and Base URL can be configured in the `import.py` file. +- The Base URL should be in the format `http://localhost:7878 / 8989` unless you have a different host or port. + +### Radarr into Sonarr + +- Custom formats can be freely imported and exported from sonarr to radarr. +- Profiles cannot be imported from radarr to sonarr or vice versa. This is because some of the quality source names are different in each program. To get around this issue, export an already made profile from radarr / sonarr, replace the quality items from said profile into your profile of choice and then import it. You can then adjust the quality sources inside the app as you desire. diff --git a/import_cf.py b/import_custom_formats.py similarity index 100% rename from import_cf.py rename to import_custom_formats.py diff --git a/import_qf.py b/import_quality_profiles.py similarity index 100% rename from import_qf.py rename to import_quality_profiles.py diff --git a/profiles/Transparent (Sonarr).json b/profiles/Transparent (Sonarr).json new file mode 100644 index 0000000..e6904f5 --- /dev/null +++ b/profiles/Transparent (Sonarr).json @@ -0,0 +1,864 @@ +[ + { + "name": "Transparent (Sonarr)", + "upgradeAllowed": true, + "cutoff": 1001, + "items": [ + { + "quality": { + "id": 0, + "name": "Unknown", + "source": "unknown", + "resolution": 0 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 13, + "name": "Bluray-480p", + "source": "bluray", + "resolution": 480 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 4, + "name": "HDTV-720p", + "source": "television", + "resolution": 720 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 14, + "name": "WEBRip-720p", + "source": "webRip", + "resolution": 720 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 5, + "name": "WEBDL-720p", + "source": "web", + "resolution": 720 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 6, + "name": "Bluray-720p", + "source": "bluray", + "resolution": 720 + }, + "items": [], + "allowed": false + }, + { + "name": "Fallback SD", + "items": [ + { + "quality": { + "id": 1, + "name": "SDTV", + "source": "television", + "resolution": 480 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 12, + "name": "WEBRip-480p", + "source": "webRip", + "resolution": 480 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 8, + "name": "WEBDL-480p", + "source": "web", + "resolution": 480 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 2, + "name": "DVD", + "source": "dvd", + "resolution": 480 + }, + "items": [], + "allowed": true + } + ], + "allowed": true, + "id": 1003 + }, + { + "name": "Fallback 1080p", + "items": [ + { + "quality": { + "id": 10, + "name": "Raw-HD", + "source": "televisionRaw", + "resolution": 1080 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 9, + "name": "HDTV-1080p", + "source": "television", + "resolution": 1080 + }, + "items": [], + "allowed": true + } + ], + "allowed": true, + "id": 1002 + }, + { + "name": "Transparent Capable", + "items": [ + { + "quality": { + "id": 3, + "name": "WEBDL-1080p", + "source": "web", + "resolution": 1080 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 15, + "name": "WEBRip-1080p", + "source": "webRip", + "resolution": 1080 + }, + "items": [], + "allowed": true + }, + { + "quality": { + "id": 7, + "name": "Bluray-1080p", + "source": "bluray", + "resolution": 1080 + }, + "items": [], + "allowed": true + } + ], + "allowed": true, + "id": 1001 + }, + { + "quality": { + "id": 20, + "name": "Bluray-1080p Remux", + "source": "blurayRaw", + "resolution": 1080 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 16, + "name": "HDTV-2160p", + "source": "television", + "resolution": 2160 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 17, + "name": "WEBRip-2160p", + "source": "webRip", + "resolution": 2160 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 18, + "name": "WEBDL-2160p", + "source": "web", + "resolution": 2160 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 19, + "name": "Bluray-2160p", + "source": "bluray", + "resolution": 2160 + }, + "items": [], + "allowed": false + }, + { + "quality": { + "id": 21, + "name": "Bluray-2160p Remux", + "source": "blurayRaw", + "resolution": 2160 + }, + "items": [], + "allowed": false + } + ], + "minFormatScore": 0, + "cutoffFormatScore": 500, + "formatItems": [ + { + "format": 214, + "name": "LQ", + "score": -9999 + }, + { + "format": 213, + "name": "EPSiLON", + "score": 0 + }, + { + "format": 212, + "name": "playBD", + "score": 0 + }, + { + "format": 211, + "name": "BLURANiUM", + "score": 0 + }, + { + "format": 210, + "name": "PmP", + "score": 0 + }, + { + "format": 209, + "name": "WiLDCAT", + "score": 0 + }, + { + "format": 208, + "name": "TRiToN", + "score": 0 + }, + { + "format": 207, + "name": "3L", + "score": 0 + }, + { + "format": 206, + "name": "Dolby Vision w/out Fallback", + "score": 0 + }, + { + "format": 205, + "name": "UHDBits", + "score": 0 + }, + { + "format": 204, + "name": "ATMOS (Missing)", + "score": 0 + }, + { + "format": 203, + "name": "TrueHD (Missing)", + "score": -9999 + }, + { + "format": 202, + "name": "HDR10 (Missing)", + "score": 0 + }, + { + "format": 201, + "name": "HDR10", + "score": 0 + }, + { + "format": 200, + "name": "Dolby Vision", + "score": 0 + }, + { + "format": 199, + "name": "HDR10+", + "score": 0 + }, + { + "format": 198, + "name": "Stream Optimised", + "score": 0 + }, + { + "format": 197, + "name": "LoRD", + "score": 70 + }, + { + "format": 196, + "name": "Scene", + "score": 30 + }, + { + "format": 195, + "name": "mHD", + "score": -999999 + }, + { + "format": 194, + "name": "AV-1", + "score": -9999 + }, + { + "format": 193, + "name": "VVC", + "score": -9999 + }, + { + "format": 192, + "name": "Extras", + "score": -9999 + }, + { + "format": 191, + "name": "480p", + "score": 0 + }, + { + "format": 190, + "name": "Dariush ", + "score": 20 + }, + { + "format": 189, + "name": "TBB SD", + "score": 30 + }, + { + "format": 188, + "name": "Xvid", + "score": 0 + }, + { + "format": 187, + "name": "DVD", + "score": 0 + }, + { + "format": 186, + "name": "DVD REMUX ", + "score": 40 + }, + { + "format": 185, + "name": "HANDJOB SD", + "score": 20 + }, + { + "format": 184, + "name": "iTunes (Missing)", + "score": 20 + }, + { + "format": 183, + "name": "ROKU", + "score": 30 + }, + { + "format": 182, + "name": "BeyondHD", + "score": -10000 + }, + { + "format": 181, + "name": "Disc ", + "score": -9999 + }, + { + "format": 180, + "name": "3D", + "score": -9999 + }, + { + "format": 179, + "name": "Unwanted", + "score": -9999 + }, + { + "format": 178, + "name": "RightSIZE", + "score": 70 + }, + { + "format": 177, + "name": "Black and White", + "score": -9999 + }, + { + "format": 176, + "name": "TrueHD", + "score": -9999 + }, + { + "format": 175, + "name": "DTS-X", + "score": -9999 + }, + { + "format": 174, + "name": "FLAC", + "score": 0 + }, + { + "format": 173, + "name": "DTS-HD MA", + "score": -9999 + }, + { + "format": 172, + "name": "x265", + "score": -9999 + }, + { + "format": 171, + "name": "IMAX", + "score": 10 + }, + { + "format": 170, + "name": "ATMOS", + "score": 5 + }, + { + "format": 169, + "name": "DD", + "score": 0 + }, + { + "format": 168, + "name": "DTS", + "score": 0 + }, + { + "format": 167, + "name": "DD+", + "score": 0 + }, + { + "format": 166, + "name": "iTunes", + "score": 20 + }, + { + "format": 165, + "name": "Paramount+", + "score": 30 + }, + { + "format": 164, + "name": "Peacock TV", + "score": 30 + }, + { + "format": 163, + "name": "Hulu", + "score": 30 + }, + { + "format": 162, + "name": "Netflix", + "score": 40 + }, + { + "format": 161, + "name": "HBO Max", + "score": 40 + }, + { + "format": 160, + "name": "Disney+", + "score": 40 + }, + { + "format": 159, + "name": "Apple TV+", + "score": 50 + }, + { + "format": 158, + "name": "Movies Anywhere", + "score": 60 + }, + { + "format": 157, + "name": "Amazon Prime", + "score": 50 + }, + { + "format": 156, + "name": "REMUX", + "score": -9999 + }, + { + "format": 155, + "name": "x264", + "score": 10 + }, + { + "format": 154, + "name": "WEBRip", + "score": 0 + }, + { + "format": 153, + "name": "Blu-Ray", + "score": 0 + }, + { + "format": 152, + "name": "2160p", + "score": -9999 + }, + { + "format": 151, + "name": "720p", + "score": -10000 + }, + { + "format": 150, + "name": "1080p", + "score": 60 + }, + { + "format": 149, + "name": "BHDStudio", + "score": 30 + }, + { + "format": 148, + "name": "LEGi0N", + "score": 30 + }, + { + "format": 147, + "name": "FraMeSToR", + "score": 30 + }, + { + "format": 146, + "name": "iFT", + "score": 70 + }, + { + "format": 145, + "name": "MTeam", + "score": -9999 + }, + { + "format": 144, + "name": "EDPH", + "score": 30 + }, + { + "format": 143, + "name": "HANDJOB", + "score": 30 + }, + { + "format": 142, + "name": "c0ke", + "score": 110 + }, + { + "format": 141, + "name": "KASHMiR", + "score": 70 + }, + { + "format": 140, + "name": "WMING", + "score": 70 + }, + { + "format": 139, + "name": "playHD", + "score": 70 + }, + { + "format": 138, + "name": "E.N.D", + "score": 70 + }, + { + "format": 137, + "name": "GutS", + "score": 70 + }, + { + "format": 136, + "name": "BV", + "score": 70 + }, + { + "format": 135, + "name": "SiMPLE", + "score": 70 + }, + { + "format": 134, + "name": "W4NK3R", + "score": 70 + }, + { + "format": 133, + "name": "GS88", + "score": 70 + }, + { + "format": 132, + "name": "HiP", + "score": 80 + }, + { + "format": 131, + "name": "GALAXY", + "score": 70 + }, + { + "format": 130, + "name": "luvBB", + "score": 70 + }, + { + "format": 129, + "name": "NyHD", + "score": 70 + }, + { + "format": 128, + "name": "ZIMBO", + "score": 70 + }, + { + "format": 127, + "name": "ThD", + "score": 70 + }, + { + "format": 126, + "name": "SaNcTi", + "score": 70 + }, + { + "format": 125, + "name": "ORiGEN", + "score": 70 + }, + { + "format": 124, + "name": "Positive", + "score": 70 + }, + { + "format": 123, + "name": "ESiR", + "score": 70 + }, + { + "format": 122, + "name": "Chotab", + "score": 70 + }, + { + "format": 121, + "name": "xander", + "score": 70 + }, + { + "format": 120, + "name": "FTW-HD", + "score": 70 + }, + { + "format": 119, + "name": "Penumbra", + "score": 70 + }, + { + "format": 118, + "name": "TDD", + "score": 70 + }, + { + "format": 117, + "name": "Dariush SD", + "score": 70 + }, + { + "format": 116, + "name": "PTer", + "score": 70 + }, + { + "format": 115, + "name": "SbR", + "score": 70 + }, + { + "format": 114, + "name": "nmd", + "score": 70 + }, + { + "format": 113, + "name": "TBB", + "score": 70 + }, + { + "format": 112, + "name": "EA", + "score": 80 + }, + { + "format": 111, + "name": "BMF", + "score": 80 + }, + { + "format": 110, + "name": "LolHD", + "score": 80 + }, + { + "format": 109, + "name": "HDMaNiAcS", + "score": 80 + }, + { + "format": 108, + "name": "IDE", + "score": 80 + }, + { + "format": 107, + "name": "de[42]", + "score": 90 + }, + { + "format": 106, + "name": "NCmt", + "score": 100 + }, + { + "format": 105, + "name": "decibeL", + "score": 90 + }, + { + "format": 104, + "name": "NTb", + "score": 80 + }, + { + "format": 103, + "name": "CRiSC", + "score": 90 + }, + { + "format": 102, + "name": "SA89", + "score": 100 + }, + { + "format": 101, + "name": "HiDt", + "score": 100 + }, + { + "format": 100, + "name": "FoRM", + "score": 100 + }, + { + "format": 99, + "name": "HiFi", + "score": 100 + }, + { + "format": 98, + "name": "CtrlHD", + "score": 100 + }, + { + "format": 97, + "name": "VietHD", + "score": 110 + }, + { + "format": 96, + "name": "ZQ", + "score": 110 + }, + { + "format": 95, + "name": "TayTo", + "score": 110 + }, + { + "format": 94, + "name": "Geek", + "score": 110 + }, + { + "format": 93, + "name": "EbP", + "score": 120 + }, + { + "format": 92, + "name": "DON", + "score": 120 + }, + { + "format": 91, + "name": "D-Z0N3", + "score": 120 + } + ] + } +] \ No newline at end of file