28 Commits
v0.1 ... v0.2.3

Author SHA1 Message Date
santiagosayshey
2c764f993c updated readme 2024-01-27 15:16:54 +10:30
santiagosayshey
fc8196dc10 v0.2.3
- changed from json to yaml for config
- added export_path setting to set where exported files go : fixes https://github.com/santiagosayshey/Profilarr/issues/5
- exports now save to {export_path}/{app_type}/{app_name}
- can choose which instance to manually import to
- sync automatically chooses correct custom formats / quality profiles for the app type
- updated readme with usage examples
- added install requirements

Closes #4, #5
2024-01-27 15:14:04 +10:30
santiagosayshey
c39d477deb Update README.md
temp fix for issue #4
2024-01-27 09:10:36 +10:30
santiagosayshey
cbdc4a0c8e v0.2.2.2
- allowed SD fallback in 1080p optimal quality settings
2024-01-26 22:19:50 +10:30
santiagosayshey
972d3bc1fc v0.2.2.1
- added immutable 2160p optimal profiles
2024-01-26 22:04:49 +10:30
santiagosayshey
9232859a9d Merge branch 'main' of https://github.com/santiagosayshey/Profilarr 2024-01-26 21:58:41 +10:30
santiagosayshey
e41d74e4d1 v0.2.2
- added 1080p optimal
- removed HDR from h265 balanced
- removed x265 from h265 balanced
- changed 3D custom format
- added HDR, DV, Atmos missing groups
- added PCM audio
- added bluray source specific to remuxes (removes encodes from optimal profiles)
2024-01-26 21:58:31 +10:30
santiagosayshey
b9bb39732e Update README.md
removed dev guide from readme
2024-01-26 04:32:46 +10:30
santiagosayshey
601e630ca2 Merge branch 'main' of https://github.com/santiagosayshey/Profilarr 2024-01-26 04:21:48 +10:30
santiagosayshey
76d7509e86 v0.2.1
- added immutable transparent profiles
- added 1080p h265 balanced
- added 1080p balanced
2024-01-26 04:21:38 +10:30
santiagosayshey
47aa3df44c Update README.md 2024-01-24 22:44:43 +10:30
santiagosayshey
37eb633760 clarify readme 2024-01-23 14:34:10 +10:30
santiagosayshey
246e4d2d74 updated credit for trash fguides in readme 2024-01-23 13:51:40 +10:30
santiagosayshey
78bc2afcff Update README.md to reflect sync capability 2024-01-20 20:08:16 +10:30
santiagosayshey
68c76872ae v0.2
- Implemented multiple instance syncing
- Improved reusability of import / export functions
- Changed format of config file
2024-01-20 18:51:42 +10:30
santiagosayshey
bae4d0c45c Implemented syncing functionality for Radarr and Sonarr instances
- config changes to allow for single app sync
- new command to sync
- some code reformatting in import/export to allow for temp files
- updated readme to reflect syncing capability
2024-01-20 12:54:49 +10:30
santiagosayshey
da2d76fc2c v0.1.3.5
- release clarification in readme
2024-01-19 19:22:42 +10:30
santiagosayshey
f6698516af v0.1.3.4
- improved descriptions
2024-01-19 19:20:34 +10:30
santiagosayshey
a015fd1ccb v0.1.3.3
- grammar
2024-01-19 19:18:59 +10:30
santiagosayshey
6b09e4e297 v0.1.3.2
- fixed description
2024-01-19 19:17:33 +10:30
santiagosayshey
47cf31ab10 v0.1.3.1
- updated readme to reflect changes in usage
2024-01-19 19:15:38 +10:30
santiagosayshey
827efd6633 v0.1.3
- improved debugging info for exports
- improved user control while exporting
- added config file to add paths / api keys
- added master setup for radarr / sonarr to sync from (not implemented yet)
- adjusted custom format file names to be consistent with qp's
- combined import functionality into a single script
- improved debugging info for imports (functionality is still the same)
- error messages for profile naming conflicts, bad auth and missing app
- up to date set of profiles / custom formats as of 19/01/24
2024-01-19 19:00:59 +10:30
Samuel Chau
aba057a8c9 v0.1.2
- option to choose what app export is "using". Allows similar profiles, custom formats for both apps to exist at the same time.
- added many release groups. Mostly TV related
- fixed some outlier issues with Radarr profiles
- added v0.1 Transparent and Optimal profiles for Sonarr
- updated custom formats to work with either / radarr sonarr
2024-01-19 13:39:04 +10:30
Samuel Chau
eacb063164 v0.1.1
- included guidance on importing into sonarr
- added transparent profile for sonarr
2024-01-18 12:31:19 +10:30
Samuel Chau
d928c1f769 Merge branch 'main' of https://github.com/santiagosayshey/Profilarr 2023-10-07 20:16:00 +10:30
Samuel Chau
520af41f5f - updated some custom formats
- two new transparent profile variants
2023-10-07 20:15:50 +10:30
santiagosayshey
5615f6251a Update README.md 2023-09-29 17:35:19 +09:30
santiagosayshey
018e570199 Update README.md 2023-09-29 17:34:37 +09:30
34 changed files with 43002 additions and 12169 deletions

266
README.md
View File

@@ -1,41 +1,271 @@
# 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 designed to add import/export/sync functionality to the \*arr suite. It offers a user-friendly way to export existing custom formats / profiles, import new ones or sync a master instance of Radarr / Sonarr with extras.
## ⚠️ Before Continuing
- **This tool will overwrite any custom formats in your Radarr installation that have the same name.**
- **This tool will overwrite any custom formats in your \*arr installation that have the same name.**
- **Custom Formats MUST be imported before syncing any premade profile.**
- **Always back up your Radarr and Sonarr configurations before using Profilarr to avoid unintended data loss.** (Seriously, do it. Even I've lost data to this tool because I forgot to back up my configs.)
## 🛠️ Installation
### Prerequisites
- Python 3.x installed. You can download it from [python.org](https://www.python.org/downloads/).
- Radarr / Sonarr
### Steps
### 📦 Dependencies
1. Download the Profilarr zip file from the release section.
- run `pip install -r requirements.txt` to install dependencies.
### Initial Setup
1. Download the latest Profilarr package 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.
- Modify the Base URL if needed
4. Save the changes and close the text editor.
3. Open the `config.yml` file in a text editor.
- Add the URL and API key to the master instances of Radarr / Sonarr.
- If syncing, add the URL, API key and a name to each extra instance of Radarr / Sonarr.
- If exporting, adjust the `export_path` to your desired export location.
4. Save the changes.
## 🚀 Usage
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.
### Importing
## 📦 Dependencies
1. Run `python importarr.py` in your command line interface.
2. Follow the on-screen prompts to select the app and the data you want to import.
3. Choose the specific file for Custom Formats or select a profile for Quality Profiles.
4. The data will be imported to your selected Radarr or Sonarr installation.
- `requests` (Install using `pip install requests`)
#### Custom Format Import Example
## ⚙️ Configuration
```bash
PS Z:\Profilarr> py importarr.py
Available instances to import to:
1. Sonarr [Master]
2. Radarr [Master]
3. Sonarr [4k-sonarr]
4. Radarr [4k-radarr]
Enter the number of the instance to import to: 4
### Radarr 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.
Choose what to import:
1. Custom Formats
2. Quality Profiles
Enter your choice (1/2): 1
Available files:
1. Custom Formats (Radarr).json
Select a file to import (or 'all' for all files): 1
Adding custom format 'D-Z0N3': SUCCESS
Adding custom format 'DON': SUCCESS
Adding custom format 'EbP': SUCCESS
Adding custom format 'Geek': SUCCESS
Adding custom format 'TayTo': SUCCESS
Adding custom format 'ZQ': SUCCESS
Adding custom format 'VietHD': SUCCESS
Adding custom format 'CtrlHD': SUCCESS
Adding custom format 'HiFi': SUCCESS
Adding custom format 'FoRM': SUCCESS
Adding custom format 'HiDt': SUCCESS
Adding custom format 'SA89': SUCCESS
...
Successfully added 0 custom formats, updated 131 custom formats.
```
#### Quality Profile Import Example
```bash
PS Z:\Profilarr> py importarr.py
Available instances to import to:
1. Sonarr [Master]
2. Radarr [Master]
3. Sonarr [4k-sonarr]
4. Radarr [4k-radarr]
Enter the number of the instance to import to: 4
Choose what to import:
1. Custom Formats
2. Quality Profiles
Enter your choice (1/2): 2
Available files:
1. 1080p Balanced (Radarr).json
2. 1080p Balanced (Single Grab) (Radarr).json
3. 1080p h265 Balanced (Radarr).json
4. 1080p h265 Balanced (Single Grab) (Radarr).json
5. 1080p Optimal (Radarr).json
6. 1080p Optimal (Single Grab) (Radarr).json
7. 1080p Transparent (Double Grab) (Radarr).json
8. 1080p Transparent (Radarr).json
9. 1080p Transparent (Single Grab) (Radarr).json
10. 2160p Optimal (Radarr).json
11. 2160p Optimal (Single Grab) (Radarr).json
Select a file to import (or 'all' for all files): all
Successfully added Quality Profile 1080p Balanced
Successfully added Quality Profile 1080p Balanced (Single Grab)
Successfully added Quality Profile 1080p h265 Balanced
Successfully added Quality Profile 1080p h265 Balanced (Single Grab)
Successfully added Quality Profile 1080p Optimal
Successfully added Quality Profile 1080p Optimal (Single Grab)
Successfully added Quality Profile 1080p Transparent (Double Grab)
Successfully added Quality Profile 1080p Transparent
Successfully added Quality Profile 1080p Transparent (Single Grab)
Successfully added Quality Profile 2160p Optimal
Successfully added Quality Profile 2160p Optimal (Single Grab)
PS Z:\Profilarr>
```
### Exporting
1. Run `python exportarr.py` in your command line interface.
2. Choose the instance you want to export from.
3. Choose the data you want to export.
4. The data will be exported to `exports/{instance_type}/{instance_name}/{data_type}`.
#### Example
```bash
PS Z:\Profilarr> py exportarr.py
Available sources to export from:
1. Sonarr [Master]
2. Radarr [Master]
3. Sonarr [4k-sonarr]
4. Radarr [4k-radarr]
Enter the number of the app to export from: 2
Choose what to export:
1. Custom Formats
2. Quality Profiles
3. Both
Enter your choice (1/2/3): 3
Attempting to access Radarr at http://localhost:7878
Found 131 custom formats.
- D-Z0N3
- DON
- EbP
- Geek
- TayTo
- ZQ
- VietHD
- CtrlHD
- HiFi
- FoRM
... and 121 more.
Saved to './exports\radarr\master\custom_formats\Custom Formats (Radarr).json'
Attempting to access Radarr at http://localhost:7878
Found 13 quality profiles.
- 1080p Optimal
- 2160p Optimal
- 1080p Balanced
- 1080p Transparent
- 1080p Transparent (Double Grab)
- 1080p Transparent (Single Grab)
- 1080p Balanced (Single Grab)
- 1080p h265 Balanced
- 1080p h265 Balanced (Single Grab)
- 1080p x265 HDR Transparent
... and 3 more.
Saved to 'exports\radarr\master\profiles'
PS Z:\Profilarr>
```
### Syncing
1. Run `python syncarr.py` in your command line interface.
2. The script will automatically export data from the master instance and import it to all other instances specified in `config.json`.
3. This feature is designed to manage multiple Radarr/Sonarr instances, syncing profiles and formats seamlessly.
#### Example
```bash
PS Z:\Profilarr> py syncarr.py
Select the app you want to sync:
1. Radarr
2. Sonarr
Enter your choice (1 or 2): 2
Attempting to access Sonarr at http://localhost:8989
Found 135 custom formats.
- D-Z0N3
- DON
- EbP
- Geek
- TayTo
- ZQ
- VietHD
- CtrlHD
- HiFi
- FoRM
... and 125 more.
Saved to './temp_directory/custom_formats\Custom Formats (Sonarr).json'
Attempting to access Sonarr at http://localhost:8989
Found 11 quality profiles.
- 1080p Transparent
- 2160p Optimal
- 1080p Transparent (Single Grab)
- 1080p Transparent (Double Grab)
- 1080p Balanced
- 1080p Balanced (Single Grab)
- 1080p h265 Balanced
- 1080p h265 Balanced (Single Grab)
- 1080p Optimal
- 1080p Optimal (Single Grab)
... and 1 more.
Saved to 'temp_directory\quality_profiles'
Importing to instance: 4k-sonarr
Adding custom format 'D-Z0N3': SUCCESS
Adding custom format 'DON': SUCCESS
Adding custom format 'EbP': SUCCESS
Adding custom format 'Geek': SUCCESS
Adding custom format 'TayTo': SUCCESS
Adding custom format 'ZQ': SUCCESS
Adding custom format 'VietHD': SUCCESS
Adding custom format 'CtrlHD': SUCCESS
Adding custom format 'HiFi': SUCCESS
... and 125 more.
Successfully added 135 custom formats, updated 0 custom formats.
Successfully added Quality Profile 1080p Balanced (Single Grab)
Successfully added Quality Profile 1080p Balanced
Successfully added Quality Profile 1080p h265 Balanced
Successfully added Quality Profile 1080p h265 Balanced (Single Grab)
Successfully added Quality Profile 1080p Optimal (Single Grab)
Successfully added Quality Profile 1080p Optimal
Successfully added Quality Profile 1080p Transparent (Double Grab)
Successfully added Quality Profile 1080p Transparent (Single Grab)
Successfully added Quality Profile 1080p Transparent
Successfully added Quality Profile 2160p Optimal (Single Grab)
Successfully added Quality Profile 2160p Optimal
Deleted temporary directory: ./temp_directory
PS Z:\Profilarr>
```
### Radarr and Sonarr Compatibility
- You are only able to import / sync files to the app that is included in the file name (e.g. `Radarr` or `Sonarr`).
- It is possible to manually rename the files to import them to the other app, but this is not recommended.
- Custom Formats will succesfully import, but will require manual editing to work with the other app, i.e. you must adjust the quality sources to match the other app's naming scheme.
- Quality Profiles will not import at all, as they are not compatible with the other app. It is possible to import them manually by editing the json directly, but this is not recommended.
- In future, I may add a feature to automatically convert profiles between the two apps, but this is not currently a priority.
## 🌟 Upcoming Features
- **Lidarr Support:** Expand functionality to include Lidarr, allowing users to manage music quality profiles and custom formats.
- **User Interface (UI):** Development of a graphical user interface (GUI) for easier and more intuitive interaction with Profilarr. This UI will cater to users who prefer graphical over command-line interactions.
- **Automatic Updates:** Implement an auto-update mechanism for Profilarr, ensuring users always have access to the latest features, improvements, and bug fixes without manual intervention.
# TRaSH Guides
Some custom formats found here have been interated on from the trash guides. Credit for these goes entirely to trash, and can be found on their site here. It is not my intention to steal their work, but rather to build on it and make it more accessible to the average user through my quality profiles. Please check out their site for more information on their work.
https://trash-guides.info/

20
config.yml Normal file
View File

@@ -0,0 +1,20 @@
instances:
master:
sonarr:
base_url: "http://localhost:8989"
api_key: "API_KEY"
radarr:
base_url: "http://localhost:7878"
api_key: "API_KEY"
extras:
sonarr:
- name: "4k-sonarr"
base_url: "http://localhost:8998"
api_key: "API_KEY"
radarr:
- name: "4k-radarr"
base_url: "http://localhost:7887"
api_key: "API_KEY"
settings:
export_path: "./exports"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,85 +0,0 @@
import json
import requests
import os
import re
# Define constants
base_url = "http://localhost:7878"
api_key = "API_GOES_HERE"
# Define parameters and headers
params = {"apikey": api_key}
headers = {"X-Api-Key": api_key}
files = {'file': ('', '')} # Empty file to force multipart/form-data
# Login
login_url = f"{base_url}/login"
response = requests.get(login_url, params=params, headers=headers, files=files)
if response.status_code != 200:
print(f"Login Failed! (HTTP {response.status_code})")
print("Response Content: ", response.content)
exit()
def export_cf():
custom_format_url = f"{base_url}/api/v3/customformat"
response = requests.get(custom_format_url, params=params, headers=headers)
if response.status_code == 200:
data = response.json()
# Remove 'id' from each custom format
for custom_format in data:
custom_format.pop('id', None)
# Ensure the ./custom_formats directory exists
if not os.path.exists('./custom_formats'):
os.makedirs('./custom_formats')
# Save to JSON file
with open('./custom_formats/cf.json', 'w') as f:
json.dump(data, f, indent=4)
print("Custom Formats have been saved to './custom_formats/cf.json'")
else:
print(f"Failed to retrieve custom formats! (HTTP {response.status_code})")
print("Response Content: ", response.content)
def sanitize_filename(filename):
# Replace any characters not allowed in filenames with _
sanitized_filename = re.sub(r'[\\/*?:"<>|]', '_', filename)
return sanitized_filename
def export_qf():
response = requests.get(f"{base_url}/api/v3/qualityprofile", params=params, headers=headers)
if response.status_code == 200:
quality_profiles = response.json()
# Ensure the ./profiles directory exists
if not os.path.exists('./profiles'):
os.makedirs('./profiles')
# Process each profile separately
for profile in quality_profiles:
profile.pop('id', None) # Remove the 'id' field
# Use the name of the profile to create a filename
profile_name = profile.get('name', 'unnamed_profile') # Use a default name if the profile has no name
profile_name = sanitize_filename(profile_name) # Sanitize the filename
profile_filename = f"{profile_name}.json"
profile_filepath = os.path.join('./profiles', profile_filename)
# Save the individual profile to a file as a single-element array
with open(profile_filepath, 'w') as file:
json.dump([profile], file, indent=4) # Note the [profile], it will make it an array with a single element
print("Quality profiles have been successfully saved to the ./profiles directory")
else:
print("Failed to retrieve quality profiles!")
print("Response Content: ", response.content.decode('utf-8'))
if __name__ == "__main__":
export_cf()
export_qf()

183
exportarr.py Normal file
View File

@@ -0,0 +1,183 @@
import requests
import os
import re
import yaml
import json
# ANSI escape sequences for colors
class Colors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
# Load configuration for main app
with open('config.yml', 'r') as config_file:
config = yaml.safe_load(config_file)
master_config = config['instances']['master']
export_base_path = config['settings']['export_path']
def get_user_choice():
sources = []
print(Colors.HEADER + "Available sources to export from:" + Colors.ENDC)
# Add master installations
for app in master_config:
sources.append((app, f"{app.capitalize()} [Master]", "master"))
# Add extra installations
if "extras" in config['instances']:
for app, instances in config['instances']['extras'].items():
for install in instances:
sources.append((app, f"{app.capitalize()} [{install['name']}]", install['name']))
# Display sources with numbers
for idx, (app, name, _) in enumerate(sources, start=1):
print(f"{idx}. {name}")
# User selection
choice = input("Enter the number of the app to export from: ").strip()
while not choice.isdigit() or int(choice) < 1 or int(choice) > len(sources):
print(Colors.FAIL + "Invalid input. Please enter a valid number." + Colors.ENDC)
choice = input("Enter the number of the app to export from: ").strip()
selected_app, instance_name = sources[int(choice) - 1][0], sources[int(choice) - 1][2]
print()
return selected_app, instance_name
def get_export_choice():
print(Colors.HEADER + "Choose what to export:" + Colors.ENDC)
print("1. Custom Formats")
print("2. Quality Profiles")
print("3. Both")
choice = input("Enter your choice (1/2/3): ").strip()
while choice not in ["1", "2", "3"]:
print(Colors.FAIL + "Invalid input. Please enter 1, 2, or 3." + Colors.ENDC)
choice = input("Enter your choice (1/2/3): ").strip()
print()
return choice
def get_app_config(source):
app_config = master_config[source]
return app_config['base_url'], app_config['api_key']
def sanitize_filename(filename):
sanitized_filename = re.sub(r'[\\/*?:"<>|]', '_', filename)
return sanitized_filename
def handle_response_errors(response):
if response.status_code == 401:
print(Colors.FAIL + "Authentication error: Invalid API key." + Colors.ENDC)
elif response.status_code == 403:
print(Colors.FAIL + "Forbidden: Access is denied." + Colors.ENDC)
else:
print(Colors.FAIL + f"An error occurred! (HTTP {response.status_code})" + Colors.ENDC)
print("Response Content: ", response.content.decode('utf-8'))
def print_saved_items(items, item_type):
if len(items) > 10:
items_to_display = items[:10]
for item in items_to_display:
print(f" - {item}")
print(f"... and {len(items) - 10} more.")
else:
for item in items:
print(f" - {item}")
def ensure_directory_exists(directory):
if not os.path.exists(directory):
os.makedirs(directory)
print(Colors.OKBLUE + f"Created directory: {directory}" + Colors.ENDC)
def export_cf(source, instance_name, save_path=None):
if save_path is None:
save_path = os.path.join(export_base_path, source, instance_name, 'custom_formats')
ensure_directory_exists(save_path)
base_url, api_key = get_app_config(source)
headers = {"X-Api-Key": api_key}
params = {"apikey": api_key}
print(Colors.OKBLUE + f"Attempting to access {source.capitalize()} at {base_url}" + Colors.ENDC)
custom_format_url = f"{base_url}/api/v3/customformat"
try:
response = requests.get(custom_format_url, params=params, headers=headers)
if response.status_code == 200:
data = response.json()
print(Colors.OKGREEN + f"Found {len(data)} custom formats." + Colors.ENDC)
saved_formats = []
for custom_format in data:
custom_format.pop('id', None)
saved_formats.append(custom_format['name'])
file_path = os.path.join(save_path, f'Custom Formats ({source.capitalize()}).json')
with open(file_path, 'w') as f:
json.dump(data, f, indent=4)
print_saved_items(saved_formats, "Custom Formats")
print(Colors.OKGREEN + f"Saved to '{file_path}'" + Colors.ENDC)
print()
else:
handle_response_errors(response)
except requests.exceptions.ConnectionError:
print(Colors.FAIL + f"Failed to connect to {source.capitalize()}! Please check if it's running and accessible." + Colors.ENDC)
def export_qf(source, instance_name, save_path=None):
if save_path is None:
save_path = os.path.join(export_base_path, source, instance_name, 'profiles')
ensure_directory_exists(save_path)
base_url, api_key = get_app_config(source)
headers = {"X-Api-Key": api_key}
params = {"apikey": api_key}
print(Colors.OKBLUE + f"Attempting to access {source.capitalize()} at {base_url}" + Colors.ENDC)
try:
response = requests.get(f"{base_url}/api/v3/qualityprofile", params=params, headers=headers)
if response.status_code == 200:
quality_profiles = response.json()
print(Colors.OKGREEN + f"Found {len(quality_profiles)} quality profiles." + Colors.ENDC)
saved_profiles = []
for profile in quality_profiles:
profile.pop('id', None)
profile_name = profile.get('name', 'unnamed_profile')
profile_name = sanitize_filename(profile_name)
profile_filename = f"{profile_name} ({source.capitalize()}).json"
profile_filepath = os.path.join(save_path, profile_filename)
with open(profile_filepath, 'w') as file:
json.dump([profile], file, indent=4)
saved_profiles.append(profile_name) # Add the profile name to the list
print_saved_items(saved_profiles, "Quality Profiles")
print(Colors.OKGREEN + f"Saved to '{os.path.normpath(save_path)}'" + Colors.ENDC) # Normalize the path
print()
else:
handle_response_errors(response)
except requests.exceptions.ConnectionError:
print(Colors.FAIL + f"Failed to connect to {source.capitalize()}! Please check if it's running and accessible." + Colors.ENDC)
if __name__ == "__main__":
user_choice, instance_name = get_user_choice()
export_choice = get_export_choice()
if export_choice in ["1", "3"]:
export_cf(user_choice, instance_name)
if export_choice in ["2", "3"]:
export_qf(user_choice, instance_name)

View File

@@ -1,60 +0,0 @@
import json
import requests
# Define constants
base_url = "http://localhost:7878" # Update to your Radarr URL
api_key = "API_GOES_HERE" # Update to your Radarr API Key
# Define headers
headers = {"X-Api-Key": api_key}
def get_existing_formats():
get_url = f"{base_url}/api/v3/customformat"
print(f"Getting existing formats from {get_url}")
response = requests.get(get_url, headers=headers)
if response.status_code == 200:
with open('temp_cf.json', 'w') as temp_file:
json.dump(response.json(), temp_file)
else:
print(f"Failed to retrieve existing custom formats from {get_url}! (HTTP {response.status_code})")
print("Response Content: \n", response.content.decode())
exit(1)
def import_custom_formats():
with open('temp_cf.json', 'r') as temp_file:
existing_formats = json.load(temp_file)
existing_names_to_id = {format['name']: format['id'] for format in existing_formats}
with open('custom_formats/cf.json', 'r') as import_file:
import_formats = json.load(import_file)
for format in import_formats:
format_name = format['name']
if format_name in existing_names_to_id:
format_id = existing_names_to_id[format_name]
put_url = f"{base_url}/api/v3/customformat/{format_id}"
print(f"Updating existing format {format_name} using PUT at {put_url}")
format['id'] = format_id # Include the id in the request body
response = requests.put(put_url, json=format, headers=headers)
if response.status_code in [200, 201, 202]:
print(f"Successfully updated custom format {format_name}! (HTTP {response.status_code})")
else:
print(f"Failed to update custom format {format_name} at {put_url}! (HTTP {response.status_code})")
print("Response Content: \n", response.content.decode())
else:
post_url = f"{base_url}/api/v3/customformat"
print(f"Creating new format {format_name} using POST at {post_url}")
response = requests.post(post_url, json=format, headers=headers)
if response.status_code in [200, 201]:
print(f"Successfully created custom format {format_name}! (HTTP {response.status_code})")
else:
print(f"Failed to create custom format {format_name} at {post_url}! (HTTP {response.status_code})")
print("Response Content: \n", response.content.decode())
if __name__ == "__main__":
get_existing_formats()
import_custom_formats()

View File

@@ -1,115 +0,0 @@
import json
import requests
import os # For deleting the temporary file
# Define constants
base_url = "http://localhost:7878" # Update to your Radarr URL
api_key = "API_GOES_HERE" # Update to your Radarr API Key
# Define headers
params = {"apikey": api_key}
headers = {"X-Api-Key": api_key}
def cf_import_sync():
custom_format_url = f"{base_url}/api/v3/customformat"
response = requests.get(custom_format_url, headers=headers)
if response.status_code == 200:
data = response.json()
with open('custom_formats.json', 'w') as file:
json.dump(data, file, indent=4)
print("Custom Formats have been saved to 'custom_formats.json'")
return True
else:
print(f"Failed to retrieve custom formats! (HTTP {response.status_code})")
print("Response Content: ", response.content.decode('utf-8'))
return False
def import_qf():
# Call cf_import_sync first
cf_import_sync()
profile_dir = './profiles'
profiles = [f for f in os.listdir(profile_dir) if f.endswith('.json')]
# Prompt user to select a profile
print("Available Profiles:")
for i, profile in enumerate(profiles, 1):
print(f"{i}. {profile}")
selection = input("Please enter the number of the profile you want to import: ")
try:
selected_file = profiles[int(selection) - 1]
except (ValueError, IndexError):
print("Invalid selection, please enter a valid number.")
return
# Load the selected profile
with open(os.path.join(profile_dir, selected_file), 'r') as file:
try:
quality_profiles = json.load(file)
except json.JSONDecodeError as e:
print(f"Error loading selected profile: {e}")
return
# Load custom formats
try:
with open('custom_formats.json', 'r') as file:
custom_formats_data = json.load(file)
custom_formats = {format['name']: format['id'] for format in custom_formats_data}
except Exception as e:
print(f"Failed to load custom formats! Error: {e}")
return
# Process each profile and send requests
for profile in quality_profiles:
existing_format_names = set()
if 'formatItems' in profile:
for format_item in profile['formatItems']:
format_name = format_item.get('name')
if format_name:
existing_format_names.add(format_name)
if format_name in custom_formats:
format_item['format'] = custom_formats[format_name]
for format_name, format_id in custom_formats.items():
if format_name not in existing_format_names:
profile.setdefault('formatItems', []).append({
"format": format_id,
"name": format_name,
"score": 0
})
post_url = f"{base_url}/api/v3/qualityprofile"
response = requests.post(post_url, json=profile, params=params, headers=headers)
if response.status_code in [200, 201]:
print(f"Successfully added Quality Profile {profile['name']}! (HTTP {response.status_code})")
else:
try:
# Assuming the response is JSON, parse it
errors = response.json()
# Extract relevant information from the error message
message = errors.get("message", "No Message Provided")
description = errors.get("description", "No Description Provided")
# Format and print the error message
print(f"Failed to add Quality Profile {profile['name']}! (HTTP {response.status_code})")
print(f"Error Message: {message}")
except json.JSONDecodeError:
# If response is not JSON, print the whole response
print("Failed to parse error message:")
print(response.text)
try:
os.remove('custom_formats.json')
except FileNotFoundError:
pass # File already deleted or does not exist
if __name__ == "__main__":
import_qf()

265
importarr.py Normal file
View File

@@ -0,0 +1,265 @@
import requests
import os
import re
import yaml
import json
# ANSI escape sequences for colors
class Colors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
# Load configuration for main app
with open('config.yml', 'r') as config_file:
config = yaml.safe_load(config_file)
master_config = config['instances']['master']
def print_success(message):
print(Colors.OKGREEN + message + Colors.ENDC)
def print_error(message):
print(Colors.FAIL + message + Colors.ENDC)
def print_connection_error():
print(Colors.FAIL + "Failed to connect to the service! Please check if it's running and accessible." + Colors.ENDC)
def get_user_choice():
sources = []
print(Colors.HEADER + "Available instances to import to:" + Colors.ENDC)
# Add master installations
for app in master_config:
sources.append((app, f"{app.capitalize()} [Master]"))
# Add extra installations
if "extras" in config['instances']:
for app, instances in config['instances']['extras'].items():
for install in instances:
sources.append((app, f"{app.capitalize()} [{install['name']}]"))
# Display sources with numbers
for idx, (app, name) in enumerate(sources, start=1):
print(f"{idx}. {name}")
# User selection
choice = input("Enter the number of the instance to import to: ").strip()
while not choice.isdigit() or int(choice) < 1 or int(choice) > len(sources):
print_error("Invalid input. Please enter a valid number.")
choice = input("Enter the number of the instance to import to: ").strip()
selected_app, selected_name = sources[int(choice) - 1]
print()
return selected_app, selected_name
def get_import_choice():
print()
print(Colors.HEADER + "Choose what to import:" + Colors.ENDC)
print("1. Custom Formats")
print("2. Quality Profiles")
choice = input("Enter your choice (1/2): ").strip()
while choice not in ["1", "2"]:
print_error("Invalid input. Please enter 1 or 2.")
choice = input("Enter your choice (1/2): ").strip()
return choice
def get_app_config(app_name, instance_name):
if instance_name.endswith("[Master]"):
return master_config[app_name]
else:
instance_name = instance_name.replace(f"{app_name.capitalize()} [", "").replace("]", "")
extras = config['instances']['extras'].get(app_name, [])
for instance in extras:
if instance['name'] == instance_name:
return instance
raise ValueError(f"Configuration for {app_name} - {instance_name} not found.")
def select_file(directory, app_name, sync_mode=False):
app_name = app_name.lower()
files = [f for f in os.listdir(directory) if os.path.isfile(os.path.join(directory, f)) and app_name in f.lower()]
if not files:
print_error(f"No files found for {app_name.capitalize()} in {directory}.")
return None
if sync_mode:
# Automatically select all files in sync mode
return files
print()
print(Colors.OKBLUE + "Available files:" + Colors.ENDC)
for i, file in enumerate(files, 1):
print(f"{i}. {file}")
choice = input("Select a file to import (or 'all' for all files): ").strip()
print()
if choice.isdigit() and 1 <= int(choice) <= len(files):
return [files[int(choice) - 1]]
elif choice.lower() == 'all':
return files
else:
print_error("Invalid input. Please enter a valid number or 'all'.")
print()
return None
def import_custom_formats(source_config, import_path='./custom_formats', selected_files=None, sync_mode=False):
headers = {"X-Api-Key": source_config['api_key']}
get_url = f"{source_config['base_url']}/api/v3/customformat"
try:
response = requests.get(get_url, headers=headers)
if response.status_code == 200:
existing_formats = response.json()
existing_names_to_id = {format['name']: format['id'] for format in existing_formats}
if selected_files is None:
selected_files = select_file(import_path, source_config['app_name'], sync_mode=sync_mode)
if not selected_files:
return # Exit if no file is selected
for selected_file in selected_files:
added_count, updated_count = 0, 0
with open(os.path.join(import_path, selected_file), 'r') as import_file:
import_formats = json.load(import_file)
for format in import_formats:
format_name = format['name']
if format_name in existing_names_to_id:
format_id = existing_names_to_id[format_name]
put_url = f"{source_config['base_url']}/api/v3/customformat/{format_id}"
response = requests.put(put_url, json=format, headers=headers)
if response.status_code in [200, 201, 202]:
print(Colors.WARNING + f"Updating custom format '{format_name}': " + Colors.ENDC, end='')
print_success("SUCCESS")
updated_count += 1
else:
print_error(f"Updating custom format '{format_name}': FAIL")
print(response.content.decode())
else:
post_url = f"{source_config['base_url']}/api/v3/customformat"
response = requests.post(post_url, json=format, headers=headers)
if response.status_code in [200, 201]:
print(Colors.OKBLUE + f"Adding custom format '{format_name}': " + Colors.ENDC, end='')
print_success("SUCCESS")
added_count += 1
else:
print_error(f"Adding custom format '{format_name}': FAIL")
print(response.content.decode())
print()
print_success(f"Successfully added {added_count} custom formats, updated {updated_count} custom formats.")
else:
print_error(f"Failed to retrieve existing custom formats from {get_url}! (HTTP {response.status_code})")
print(response.content.decode())
except requests.exceptions.ConnectionError:
print_connection_error()
def import_quality_profiles(source_config, import_path='./profiles', selected_files=None, sync_mode=False):
headers = {"X-Api-Key": source_config['api_key']}
try:
cf_import_sync(source_config)
if not selected_files:
if sync_mode:
# Automatically select all profile files
selected_files = [f for f in os.listdir(import_path) if os.path.isfile(os.path.join(import_path, f))]
if not selected_files:
return # Exit if no file is selected
for selected_file in selected_files:
with open(os.path.join(import_path, selected_file), 'r') as file:
try:
quality_profiles = json.load(file)
except json.JSONDecodeError as e:
print_error(f"Error loading selected profile: {e}")
continue
for profile in quality_profiles:
existing_format_names = set()
if 'formatItems' in profile:
for format_item in profile['formatItems']:
format_name = format_item.get('name')
if format_name:
existing_format_names.add(format_name)
if format_name in source_config['custom_formats']:
format_item['format'] = source_config['custom_formats'][format_name]
for format_name, format_id in source_config['custom_formats'].items():
if format_name not in existing_format_names:
profile.setdefault('formatItems', []).append({
"format": format_id,
"name": format_name,
"score": 0
})
post_url = f"{source_config['base_url']}/api/v3/qualityprofile"
response = requests.post(post_url, json=profile, headers=headers)
if response.status_code in [200, 201]:
print_success(f"Successfully added Quality Profile {profile['name']}")
elif response.status_code == 409:
print_error(f"Failed to add Quality Profile {profile['name']} due to a naming conflict. Quality profile names must be unique. (HTTP {response.status_code})")
else:
try:
errors = response.json()
message = errors.get("message", "No Message Provided")
print_error(f"Failed to add Quality Profile {profile['name']}! (HTTP {response.status_code})")
print(message)
except json.JSONDecodeError:
print_error("Failed to parse error message:")
print(response.text)
except requests.exceptions.ConnectionError:
print_connection_error()
def cf_import_sync(source_config):
headers = {"X-Api-Key": source_config['api_key']}
custom_format_url = f"{source_config['base_url']}/api/v3/customformat"
try:
response = requests.get(custom_format_url, headers=headers)
if response.status_code == 200:
data = response.json()
source_config['custom_formats'] = {format['name']: format['id'] for format in data}
elif response.status_code == 401:
print_error("Authentication error: Invalid API key. Terminating program.")
exit(1)
else:
print_error(f"Failed to retrieve custom formats! (HTTP {response.status_code})")
print(response.content.decode())
exit(1)
except requests.exceptions.ConnectionError:
print_connection_error()
exit(1)
if __name__ == "__main__":
selected_app, selected_instance = get_user_choice()
source_config = get_app_config(selected_app, selected_instance)
source_config['app_name'] = selected_app
import_choice = get_import_choice()
if import_choice == "1":
selected_files = select_file('./custom_formats', selected_app)
if selected_files:
import_custom_formats(source_config, './custom_formats', selected_files)
elif import_choice == "2":
selected_files = select_file('./profiles', selected_app)
if selected_files:
import_quality_profiles(source_config, './profiles', selected_files)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,912 @@
[
{
"name": "1080p Balanced (Single Grab)",
"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": "Else",
"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
},
{
"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": "Balanced 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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": false
}
],
"minFormatScore": 0,
"cutoffFormatScore": 0,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"format": 214,
"name": "LQ",
"score": 0
},
{
"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": 0
},
{
"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": 80
},
{
"format": 197,
"name": "LoRD",
"score": 30
},
{
"format": 196,
"name": "Scene",
"score": 20
},
{
"format": 195,
"name": "mHD",
"score": -99999
},
{
"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": 30
},
{
"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": 90
},
{
"format": 183,
"name": "ROKU",
"score": 190
},
{
"format": 182,
"name": "BeyondHD",
"score": -9999
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 30
},
{
"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": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 90
},
{
"format": 165,
"name": "Paramount+",
"score": 190
},
{
"format": 164,
"name": "Peacock TV",
"score": 190
},
{
"format": 163,
"name": "Hulu",
"score": 190
},
{
"format": 162,
"name": "Netflix",
"score": 200
},
{
"format": 161,
"name": "HBO Max",
"score": 200
},
{
"format": 160,
"name": "Disney+",
"score": 200
},
{
"format": 159,
"name": "Apple TV+",
"score": 210
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 220
},
{
"format": 157,
"name": "Amazon Prime",
"score": 210
},
{
"format": 156,
"name": "REMUX",
"score": -9999
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": 10
},
{
"format": 153,
"name": "Blu-Ray",
"score": 10
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 220
},
{
"format": 149,
"name": "BHDStudio",
"score": 90
},
{
"format": 148,
"name": "LEGi0N",
"score": 20
},
{
"format": 147,
"name": "FraMeSToR",
"score": 20
},
{
"format": 146,
"name": "iFT",
"score": 30
},
{
"format": 145,
"name": "MTeam",
"score": -9999
},
{
"format": 144,
"name": "EDPH",
"score": 20
},
{
"format": 143,
"name": "HANDJOB",
"score": 20
},
{
"format": 142,
"name": "c0ke",
"score": 70
},
{
"format": 141,
"name": "KASHMiR",
"score": 30
},
{
"format": 140,
"name": "WMING",
"score": 30
},
{
"format": 139,
"name": "playHD",
"score": 30
},
{
"format": 138,
"name": "E.N.D",
"score": 30
},
{
"format": 137,
"name": "GutS",
"score": 30
},
{
"format": 136,
"name": "BV",
"score": 30
},
{
"format": 135,
"name": "SiMPLE",
"score": 30
},
{
"format": 134,
"name": "W4NK3R",
"score": 30
},
{
"format": 133,
"name": "GS88",
"score": 30
},
{
"format": 132,
"name": "HiP",
"score": 40
},
{
"format": 131,
"name": "GALAXY",
"score": 30
},
{
"format": 130,
"name": "luvBB",
"score": 30
},
{
"format": 129,
"name": "NyHD",
"score": 30
},
{
"format": 128,
"name": "ZIMBO",
"score": 30
},
{
"format": 127,
"name": "ThD",
"score": 30
},
{
"format": 126,
"name": "SaNcTi",
"score": 30
},
{
"format": 125,
"name": "ORiGEN",
"score": 30
},
{
"format": 124,
"name": "Positive",
"score": 30
},
{
"format": 123,
"name": "ESiR",
"score": 30
},
{
"format": 122,
"name": "Chotab",
"score": 30
},
{
"format": 121,
"name": "xander",
"score": 30
},
{
"format": 120,
"name": "FTW-HD",
"score": 30
},
{
"format": 119,
"name": "Penumbra",
"score": 30
},
{
"format": 118,
"name": "TDD",
"score": 30
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 30
},
{
"format": 115,
"name": "SbR",
"score": 30
},
{
"format": 114,
"name": "nmd",
"score": 30
},
{
"format": 113,
"name": "TBB",
"score": 30
},
{
"format": 112,
"name": "EA",
"score": 40
},
{
"format": 111,
"name": "BMF",
"score": 40
},
{
"format": 110,
"name": "LolHD",
"score": 40
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 40
},
{
"format": 108,
"name": "IDE",
"score": 40
},
{
"format": 107,
"name": "de[42]",
"score": 50
},
{
"format": 106,
"name": "NCmt",
"score": 60
},
{
"format": 105,
"name": "decibeL",
"score": 50
},
{
"format": 104,
"name": "NTb",
"score": 40
},
{
"format": 103,
"name": "CRiSC",
"score": 50
},
{
"format": 102,
"name": "SA89",
"score": 60
},
{
"format": 101,
"name": "HiDt",
"score": 60
},
{
"format": 100,
"name": "FoRM",
"score": 60
},
{
"format": 99,
"name": "HiFi",
"score": 60
},
{
"format": 98,
"name": "CtrlHD",
"score": 60
},
{
"format": 97,
"name": "VietHD",
"score": 70
},
{
"format": 96,
"name": "ZQ",
"score": 70
},
{
"format": 95,
"name": "TayTo",
"score": 70
},
{
"format": 94,
"name": "Geek",
"score": 70
},
{
"format": 93,
"name": "EbP",
"score": 80
},
{
"format": 92,
"name": "DON",
"score": 80
},
{
"format": 91,
"name": "D-Z0N3",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

View File

@@ -0,0 +1,912 @@
[
{
"name": "1080p Balanced",
"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": "Else",
"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
},
{
"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": "Balanced 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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"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": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"format": 214,
"name": "LQ",
"score": 0
},
{
"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": 0
},
{
"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": 80
},
{
"format": 197,
"name": "LoRD",
"score": 30
},
{
"format": 196,
"name": "Scene",
"score": 20
},
{
"format": 195,
"name": "mHD",
"score": -99999
},
{
"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": 30
},
{
"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": 90
},
{
"format": 183,
"name": "ROKU",
"score": 190
},
{
"format": 182,
"name": "BeyondHD",
"score": -9999
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 30
},
{
"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": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 90
},
{
"format": 165,
"name": "Paramount+",
"score": 190
},
{
"format": 164,
"name": "Peacock TV",
"score": 190
},
{
"format": 163,
"name": "Hulu",
"score": 190
},
{
"format": 162,
"name": "Netflix",
"score": 200
},
{
"format": 161,
"name": "HBO Max",
"score": 200
},
{
"format": 160,
"name": "Disney+",
"score": 200
},
{
"format": 159,
"name": "Apple TV+",
"score": 210
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 220
},
{
"format": 157,
"name": "Amazon Prime",
"score": 210
},
{
"format": 156,
"name": "REMUX",
"score": -9999
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": 10
},
{
"format": 153,
"name": "Blu-Ray",
"score": 10
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 220
},
{
"format": 149,
"name": "BHDStudio",
"score": 90
},
{
"format": 148,
"name": "LEGi0N",
"score": 20
},
{
"format": 147,
"name": "FraMeSToR",
"score": 20
},
{
"format": 146,
"name": "iFT",
"score": 30
},
{
"format": 145,
"name": "MTeam",
"score": -9999
},
{
"format": 144,
"name": "EDPH",
"score": 20
},
{
"format": 143,
"name": "HANDJOB",
"score": 20
},
{
"format": 142,
"name": "c0ke",
"score": 70
},
{
"format": 141,
"name": "KASHMiR",
"score": 30
},
{
"format": 140,
"name": "WMING",
"score": 30
},
{
"format": 139,
"name": "playHD",
"score": 30
},
{
"format": 138,
"name": "E.N.D",
"score": 30
},
{
"format": 137,
"name": "GutS",
"score": 30
},
{
"format": 136,
"name": "BV",
"score": 30
},
{
"format": 135,
"name": "SiMPLE",
"score": 30
},
{
"format": 134,
"name": "W4NK3R",
"score": 30
},
{
"format": 133,
"name": "GS88",
"score": 30
},
{
"format": 132,
"name": "HiP",
"score": 40
},
{
"format": 131,
"name": "GALAXY",
"score": 30
},
{
"format": 130,
"name": "luvBB",
"score": 30
},
{
"format": 129,
"name": "NyHD",
"score": 30
},
{
"format": 128,
"name": "ZIMBO",
"score": 30
},
{
"format": 127,
"name": "ThD",
"score": 30
},
{
"format": 126,
"name": "SaNcTi",
"score": 30
},
{
"format": 125,
"name": "ORiGEN",
"score": 30
},
{
"format": 124,
"name": "Positive",
"score": 30
},
{
"format": 123,
"name": "ESiR",
"score": 30
},
{
"format": 122,
"name": "Chotab",
"score": 30
},
{
"format": 121,
"name": "xander",
"score": 30
},
{
"format": 120,
"name": "FTW-HD",
"score": 30
},
{
"format": 119,
"name": "Penumbra",
"score": 30
},
{
"format": 118,
"name": "TDD",
"score": 30
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 30
},
{
"format": 115,
"name": "SbR",
"score": 30
},
{
"format": 114,
"name": "nmd",
"score": 30
},
{
"format": 113,
"name": "TBB",
"score": 30
},
{
"format": 112,
"name": "EA",
"score": 40
},
{
"format": 111,
"name": "BMF",
"score": 40
},
{
"format": 110,
"name": "LolHD",
"score": 40
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 40
},
{
"format": 108,
"name": "IDE",
"score": 40
},
{
"format": 107,
"name": "de[42]",
"score": 50
},
{
"format": 106,
"name": "NCmt",
"score": 60
},
{
"format": 105,
"name": "decibeL",
"score": 50
},
{
"format": 104,
"name": "NTb",
"score": 40
},
{
"format": 103,
"name": "CRiSC",
"score": 50
},
{
"format": 102,
"name": "SA89",
"score": 60
},
{
"format": 101,
"name": "HiDt",
"score": 60
},
{
"format": 100,
"name": "FoRM",
"score": 60
},
{
"format": 99,
"name": "HiFi",
"score": 60
},
{
"format": 98,
"name": "CtrlHD",
"score": 60
},
{
"format": 97,
"name": "VietHD",
"score": 70
},
{
"format": 96,
"name": "ZQ",
"score": 70
},
{
"format": 95,
"name": "TayTo",
"score": 70
},
{
"format": 94,
"name": "Geek",
"score": 70
},
{
"format": 93,
"name": "EbP",
"score": 80
},
{
"format": 92,
"name": "DON",
"score": 80
},
{
"format": 91,
"name": "D-Z0N3",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,898 @@
[
{
"name": "1080p Optimal (Single Grab)",
"upgradeAllowed": true,
"cutoff": 20,
"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
},
{
"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
},
{
"quality": {
"id": 10,
"name": "Raw-HD",
"source": "televisionRaw",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 9,
"name": "HDTV-1080p",
"source": "television",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 15,
"name": "WEBRip-1080p",
"source": "webRip",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 7,
"name": "Bluray-1080p",
"source": "bluray",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 3,
"name": "WEBDL-1080p",
"source": "web",
"resolution": 1080
},
"items": [],
"allowed": true
},
{
"quality": {
"id": 20,
"name": "Bluray-1080p Remux",
"source": "blurayRaw",
"resolution": 1080
},
"items": [],
"allowed": true
},
{
"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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": false
}
],
"minFormatScore": 0,
"cutoffFormatScore": 0,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 30
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 60
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": -9999
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 10
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 50
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"format": 198,
"name": "Stream Optimised",
"score": 0
},
{
"format": 197,
"name": "LoRD",
"score": 0
},
{
"format": 196,
"name": "Scene",
"score": 0
},
{
"format": 195,
"name": "mHD",
"score": 0
},
{
"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": 0
},
{
"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": 10
},
{
"format": 183,
"name": "ROKU",
"score": 20
},
{
"format": 182,
"name": "BeyondHD",
"score": 0
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 0
},
{
"format": 177,
"name": "Black and White",
"score": -9999
},
{
"format": 176,
"name": "TrueHD",
"score": 50
},
{
"format": 175,
"name": "DTS-X",
"score": 60
},
{
"format": 174,
"name": "FLAC",
"score": 30
},
{
"format": 173,
"name": "DTS-HD MA",
"score": 50
},
{
"format": 172,
"name": "x265",
"score": -9999
},
{
"format": 171,
"name": "IMAX",
"score": 10
},
{
"format": 170,
"name": "ATMOS",
"score": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 10
},
{
"format": 165,
"name": "Paramount+",
"score": 20
},
{
"format": 164,
"name": "Peacock TV",
"score": 20
},
{
"format": 163,
"name": "Hulu",
"score": 20
},
{
"format": 162,
"name": "Netflix",
"score": 30
},
{
"format": 161,
"name": "HBO Max",
"score": 30
},
{
"format": 160,
"name": "Disney+",
"score": 30
},
{
"format": 159,
"name": "Apple TV+",
"score": 40
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 50
},
{
"format": 157,
"name": "Amazon Prime",
"score": 40
},
{
"format": 156,
"name": "REMUX",
"score": 60
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": -9999
},
{
"format": 153,
"name": "Blu-Ray",
"score": -9999
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 60
},
{
"format": 149,
"name": "BHDStudio",
"score": 0
},
{
"format": 148,
"name": "LEGi0N",
"score": 0
},
{
"format": 147,
"name": "FraMeSToR",
"score": 0
},
{
"format": 146,
"name": "iFT",
"score": 0
},
{
"format": 145,
"name": "MTeam",
"score": 0
},
{
"format": 144,
"name": "EDPH",
"score": 0
},
{
"format": 143,
"name": "HANDJOB",
"score": 0
},
{
"format": 142,
"name": "c0ke",
"score": 0
},
{
"format": 141,
"name": "KASHMiR",
"score": 0
},
{
"format": 140,
"name": "WMING",
"score": 0
},
{
"format": 139,
"name": "playHD",
"score": 0
},
{
"format": 138,
"name": "E.N.D",
"score": 0
},
{
"format": 137,
"name": "GutS",
"score": 0
},
{
"format": 136,
"name": "BV",
"score": 0
},
{
"format": 135,
"name": "SiMPLE",
"score": 0
},
{
"format": 134,
"name": "W4NK3R",
"score": 0
},
{
"format": 133,
"name": "GS88",
"score": 0
},
{
"format": 132,
"name": "HiP",
"score": 0
},
{
"format": 131,
"name": "GALAXY",
"score": 0
},
{
"format": 130,
"name": "luvBB",
"score": 0
},
{
"format": 129,
"name": "NyHD",
"score": 0
},
{
"format": 128,
"name": "ZIMBO",
"score": 0
},
{
"format": 127,
"name": "ThD",
"score": 0
},
{
"format": 126,
"name": "SaNcTi",
"score": 0
},
{
"format": 125,
"name": "ORiGEN",
"score": 0
},
{
"format": 124,
"name": "Positive",
"score": 0
},
{
"format": 123,
"name": "ESiR",
"score": 0
},
{
"format": 122,
"name": "Chotab",
"score": 0
},
{
"format": 121,
"name": "xander",
"score": 0
},
{
"format": 120,
"name": "FTW-HD",
"score": 0
},
{
"format": 119,
"name": "Penumbra",
"score": 0
},
{
"format": 118,
"name": "TDD",
"score": 0
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 0
},
{
"format": 115,
"name": "SbR",
"score": 0
},
{
"format": 114,
"name": "nmd",
"score": 0
},
{
"format": 113,
"name": "TBB",
"score": 0
},
{
"format": 112,
"name": "EA",
"score": 0
},
{
"format": 111,
"name": "BMF",
"score": 0
},
{
"format": 110,
"name": "LolHD",
"score": 0
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 0
},
{
"format": 108,
"name": "IDE",
"score": 0
},
{
"format": 107,
"name": "de[42]",
"score": 0
},
{
"format": 106,
"name": "NCmt",
"score": 0
},
{
"format": 105,
"name": "decibeL",
"score": 0
},
{
"format": 104,
"name": "NTb",
"score": 0
},
{
"format": 103,
"name": "CRiSC",
"score": 0
},
{
"format": 102,
"name": "SA89",
"score": 0
},
{
"format": 101,
"name": "HiDt",
"score": 0
},
{
"format": 100,
"name": "FoRM",
"score": 0
},
{
"format": 99,
"name": "HiFi",
"score": 0
},
{
"format": 98,
"name": "CtrlHD",
"score": 0
},
{
"format": 97,
"name": "VietHD",
"score": 0
},
{
"format": 96,
"name": "ZQ",
"score": 0
},
{
"format": 95,
"name": "TayTo",
"score": 0
},
{
"format": 94,
"name": "Geek",
"score": 0
},
{
"format": 93,
"name": "EbP",
"score": 0
},
{
"format": 92,
"name": "DON",
"score": 0
},
{
"format": 91,
"name": "D-Z0N3",
"score": 0
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

View File

@@ -0,0 +1,898 @@
[
{
"name": "1080p Optimal",
"upgradeAllowed": true,
"cutoff": 20,
"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
},
{
"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
},
{
"quality": {
"id": 10,
"name": "Raw-HD",
"source": "televisionRaw",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 9,
"name": "HDTV-1080p",
"source": "television",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 15,
"name": "WEBRip-1080p",
"source": "webRip",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 7,
"name": "Bluray-1080p",
"source": "bluray",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 3,
"name": "WEBDL-1080p",
"source": "web",
"resolution": 1080
},
"items": [],
"allowed": true
},
{
"quality": {
"id": 20,
"name": "Bluray-1080p Remux",
"source": "blurayRaw",
"resolution": 1080
},
"items": [],
"allowed": true
},
{
"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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": false
}
],
"minFormatScore": 0,
"cutoffFormatScore": 1000,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 30
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 60
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": -9999
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 10
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 50
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"format": 198,
"name": "Stream Optimised",
"score": 0
},
{
"format": 197,
"name": "LoRD",
"score": 0
},
{
"format": 196,
"name": "Scene",
"score": 0
},
{
"format": 195,
"name": "mHD",
"score": 0
},
{
"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": 0
},
{
"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": 10
},
{
"format": 183,
"name": "ROKU",
"score": 20
},
{
"format": 182,
"name": "BeyondHD",
"score": 0
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 0
},
{
"format": 177,
"name": "Black and White",
"score": -9999
},
{
"format": 176,
"name": "TrueHD",
"score": 50
},
{
"format": 175,
"name": "DTS-X",
"score": 60
},
{
"format": 174,
"name": "FLAC",
"score": 30
},
{
"format": 173,
"name": "DTS-HD MA",
"score": 50
},
{
"format": 172,
"name": "x265",
"score": -9999
},
{
"format": 171,
"name": "IMAX",
"score": 10
},
{
"format": 170,
"name": "ATMOS",
"score": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 10
},
{
"format": 165,
"name": "Paramount+",
"score": 20
},
{
"format": 164,
"name": "Peacock TV",
"score": 20
},
{
"format": 163,
"name": "Hulu",
"score": 20
},
{
"format": 162,
"name": "Netflix",
"score": 30
},
{
"format": 161,
"name": "HBO Max",
"score": 30
},
{
"format": 160,
"name": "Disney+",
"score": 30
},
{
"format": 159,
"name": "Apple TV+",
"score": 40
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 50
},
{
"format": 157,
"name": "Amazon Prime",
"score": 40
},
{
"format": 156,
"name": "REMUX",
"score": 60
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": -9999
},
{
"format": 153,
"name": "Blu-Ray",
"score": -9999
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 60
},
{
"format": 149,
"name": "BHDStudio",
"score": 0
},
{
"format": 148,
"name": "LEGi0N",
"score": 0
},
{
"format": 147,
"name": "FraMeSToR",
"score": 0
},
{
"format": 146,
"name": "iFT",
"score": 0
},
{
"format": 145,
"name": "MTeam",
"score": 0
},
{
"format": 144,
"name": "EDPH",
"score": 0
},
{
"format": 143,
"name": "HANDJOB",
"score": 0
},
{
"format": 142,
"name": "c0ke",
"score": 0
},
{
"format": 141,
"name": "KASHMiR",
"score": 0
},
{
"format": 140,
"name": "WMING",
"score": 0
},
{
"format": 139,
"name": "playHD",
"score": 0
},
{
"format": 138,
"name": "E.N.D",
"score": 0
},
{
"format": 137,
"name": "GutS",
"score": 0
},
{
"format": 136,
"name": "BV",
"score": 0
},
{
"format": 135,
"name": "SiMPLE",
"score": 0
},
{
"format": 134,
"name": "W4NK3R",
"score": 0
},
{
"format": 133,
"name": "GS88",
"score": 0
},
{
"format": 132,
"name": "HiP",
"score": 0
},
{
"format": 131,
"name": "GALAXY",
"score": 0
},
{
"format": 130,
"name": "luvBB",
"score": 0
},
{
"format": 129,
"name": "NyHD",
"score": 0
},
{
"format": 128,
"name": "ZIMBO",
"score": 0
},
{
"format": 127,
"name": "ThD",
"score": 0
},
{
"format": 126,
"name": "SaNcTi",
"score": 0
},
{
"format": 125,
"name": "ORiGEN",
"score": 0
},
{
"format": 124,
"name": "Positive",
"score": 0
},
{
"format": 123,
"name": "ESiR",
"score": 0
},
{
"format": 122,
"name": "Chotab",
"score": 0
},
{
"format": 121,
"name": "xander",
"score": 0
},
{
"format": 120,
"name": "FTW-HD",
"score": 0
},
{
"format": 119,
"name": "Penumbra",
"score": 0
},
{
"format": 118,
"name": "TDD",
"score": 0
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 0
},
{
"format": 115,
"name": "SbR",
"score": 0
},
{
"format": 114,
"name": "nmd",
"score": 0
},
{
"format": 113,
"name": "TBB",
"score": 0
},
{
"format": 112,
"name": "EA",
"score": 0
},
{
"format": 111,
"name": "BMF",
"score": 0
},
{
"format": 110,
"name": "LolHD",
"score": 0
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 0
},
{
"format": 108,
"name": "IDE",
"score": 0
},
{
"format": 107,
"name": "de[42]",
"score": 0
},
{
"format": 106,
"name": "NCmt",
"score": 0
},
{
"format": 105,
"name": "decibeL",
"score": 0
},
{
"format": 104,
"name": "NTb",
"score": 0
},
{
"format": 103,
"name": "CRiSC",
"score": 0
},
{
"format": 102,
"name": "SA89",
"score": 0
},
{
"format": 101,
"name": "HiDt",
"score": 0
},
{
"format": 100,
"name": "FoRM",
"score": 0
},
{
"format": 99,
"name": "HiFi",
"score": 0
},
{
"format": 98,
"name": "CtrlHD",
"score": 0
},
{
"format": 97,
"name": "VietHD",
"score": 0
},
{
"format": 96,
"name": "ZQ",
"score": 0
},
{
"format": 95,
"name": "TayTo",
"score": 0
},
{
"format": 94,
"name": "Geek",
"score": 0
},
{
"format": 93,
"name": "EbP",
"score": 0
},
{
"format": 92,
"name": "DON",
"score": 0
},
{
"format": 91,
"name": "D-Z0N3",
"score": 0
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,919 @@
[
{
"name": "1080p Transparent (Double Grab)",
"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": 140,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"format": 223,
"name": "LiNG",
"score": 80
},
{
"format": 221,
"name": "hdalx",
"score": 80
},
{
"format": 220,
"name": "VLAD",
"score": 80
},
{
"format": 219,
"name": "AJP69",
"score": 80
},
{
"format": 218,
"name": "iON",
"score": 80
},
{
"format": 217,
"name": "BTN",
"score": 30
},
{
"format": 216,
"name": "pcroland",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 80
},
{
"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": -9999
},
{
"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": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"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": 60
},
{
"format": 183,
"name": "ROKU",
"score": 60
},
{
"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": 0
},
{
"format": 170,
"name": "ATMOS",
"score": 0
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 60
},
{
"format": 165,
"name": "Paramount+",
"score": 60
},
{
"format": 164,
"name": "Peacock TV",
"score": 60
},
{
"format": 163,
"name": "Hulu",
"score": 60
},
{
"format": 162,
"name": "Netflix",
"score": 60
},
{
"format": 161,
"name": "HBO Max",
"score": 60
},
{
"format": 160,
"name": "Disney+",
"score": 60
},
{
"format": 159,
"name": "Apple TV+",
"score": 60
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 60
},
{
"format": 157,
"name": "Amazon Prime",
"score": 60
},
{
"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": 50
},
{
"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
}
]
}
]

View File

@@ -1,6 +1,6 @@
[
{
"name": "Transparent",
"name": "1080p Transparent",
"upgradeAllowed": true,
"cutoff": 1002,
"items": [
@@ -366,6 +366,21 @@
"minFormatScore": 0,
"cutoffFormatScore": 500,
"formatItems": [
{
"format": 335,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 334,
"name": "PCM",
"score": 0
},
{
"format": 333,
"name": "h265",
"score": -9999
},
{
"format": 331,
"name": "Golden Popcorn 720p",
@@ -414,7 +429,7 @@
{
"format": 322,
"name": "Dolby Vision w/out Fallback",
"score": 0
"score": -9999
},
{
"format": 321,
@@ -429,27 +444,27 @@
{
"format": 317,
"name": "TrueHD (Missing)",
"score": -9999
"score": 0
},
{
"format": 316,
"name": "HDR10 (Missing)",
"score": 0
"score": -9999
},
{
"format": 315,
"name": "HDR10",
"score": 0
"score": -9999
},
{
"format": 314,
"name": "Dolby Vision",
"score": 0
"score": -9999
},
{
"format": 312,
"name": "HDR10+",
"score": 0
"score": -9999
},
{
"format": 308,
@@ -469,7 +484,7 @@
{
"format": 303,
"name": "mHD",
"score": -999999
"score": -99999
},
{
"format": 302,
@@ -569,12 +584,12 @@
{
"format": 281,
"name": "TrueHD",
"score": -9999
"score": 0
},
{
"format": 280,
"name": "DTS-X",
"score": -9999
"score": 0
},
{
"format": 279,
@@ -584,7 +599,7 @@
{
"format": 278,
"name": "DTS-HD MA",
"score": -9999
"score": 0
},
{
"format": 276,

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,919 @@
[
{
"name": "1080p Transparent (Single Grab)",
"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": 0,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"format": 223,
"name": "LiNG",
"score": 80
},
{
"format": 221,
"name": "hdalx",
"score": 80
},
{
"format": 220,
"name": "VLAD",
"score": 80
},
{
"format": 219,
"name": "AJP69",
"score": 80
},
{
"format": 218,
"name": "iON",
"score": 80
},
{
"format": 217,
"name": "BTN",
"score": 30
},
{
"format": 216,
"name": "pcroland",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 80
},
{
"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": -9999
},
{
"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": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"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
}
]
}
]

View File

@@ -0,0 +1,919 @@
[
{
"name": "1080p Transparent",
"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": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": -9999
},
{
"format": 223,
"name": "LiNG",
"score": 80
},
{
"format": 221,
"name": "hdalx",
"score": 80
},
{
"format": 220,
"name": "VLAD",
"score": 80
},
{
"format": 219,
"name": "AJP69",
"score": 80
},
{
"format": 218,
"name": "iON",
"score": 80
},
{
"format": 217,
"name": "BTN",
"score": 30
},
{
"format": 216,
"name": "pcroland",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 80
},
{
"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": -9999
},
{
"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": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"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
}
]
}
]

View File

@@ -0,0 +1,912 @@
[
{
"name": "1080p h265 Balanced ",
"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": "Else",
"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
},
{
"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": "Balanced 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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"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": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": 60
},
{
"format": 214,
"name": "LQ",
"score": 0
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": 0
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 0
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 0
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"format": 198,
"name": "Stream Optimised",
"score": 80
},
{
"format": 197,
"name": "LoRD",
"score": 30
},
{
"format": 196,
"name": "Scene",
"score": 20
},
{
"format": 195,
"name": "mHD",
"score": -99999
},
{
"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": 30
},
{
"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": 90
},
{
"format": 183,
"name": "ROKU",
"score": 190
},
{
"format": 182,
"name": "BeyondHD",
"score": -9999
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 30
},
{
"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": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 90
},
{
"format": 165,
"name": "Paramount+",
"score": 190
},
{
"format": 164,
"name": "Peacock TV",
"score": 190
},
{
"format": 163,
"name": "Hulu",
"score": 190
},
{
"format": 162,
"name": "Netflix",
"score": 200
},
{
"format": 161,
"name": "HBO Max",
"score": 200
},
{
"format": 160,
"name": "Disney+",
"score": 200
},
{
"format": 159,
"name": "Apple TV+",
"score": 210
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 220
},
{
"format": 157,
"name": "Amazon Prime",
"score": 210
},
{
"format": 156,
"name": "REMUX",
"score": -9999
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": 10
},
{
"format": 153,
"name": "Blu-Ray",
"score": 10
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 220
},
{
"format": 149,
"name": "BHDStudio",
"score": 90
},
{
"format": 148,
"name": "LEGi0N",
"score": 20
},
{
"format": 147,
"name": "FraMeSToR",
"score": 20
},
{
"format": 146,
"name": "iFT",
"score": 30
},
{
"format": 145,
"name": "MTeam",
"score": -9999
},
{
"format": 144,
"name": "EDPH",
"score": 20
},
{
"format": 143,
"name": "HANDJOB",
"score": 20
},
{
"format": 142,
"name": "c0ke",
"score": 70
},
{
"format": 141,
"name": "KASHMiR",
"score": 30
},
{
"format": 140,
"name": "WMING",
"score": 30
},
{
"format": 139,
"name": "playHD",
"score": 30
},
{
"format": 138,
"name": "E.N.D",
"score": 30
},
{
"format": 137,
"name": "GutS",
"score": 30
},
{
"format": 136,
"name": "BV",
"score": 30
},
{
"format": 135,
"name": "SiMPLE",
"score": 30
},
{
"format": 134,
"name": "W4NK3R",
"score": 30
},
{
"format": 133,
"name": "GS88",
"score": 30
},
{
"format": 132,
"name": "HiP",
"score": 40
},
{
"format": 131,
"name": "GALAXY",
"score": 30
},
{
"format": 130,
"name": "luvBB",
"score": 30
},
{
"format": 129,
"name": "NyHD",
"score": 30
},
{
"format": 128,
"name": "ZIMBO",
"score": 30
},
{
"format": 127,
"name": "ThD",
"score": 30
},
{
"format": 126,
"name": "SaNcTi",
"score": 30
},
{
"format": 125,
"name": "ORiGEN",
"score": 30
},
{
"format": 124,
"name": "Positive",
"score": 30
},
{
"format": 123,
"name": "ESiR",
"score": 30
},
{
"format": 122,
"name": "Chotab",
"score": 30
},
{
"format": 121,
"name": "xander",
"score": 30
},
{
"format": 120,
"name": "FTW-HD",
"score": 30
},
{
"format": 119,
"name": "Penumbra",
"score": 30
},
{
"format": 118,
"name": "TDD",
"score": 30
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 30
},
{
"format": 115,
"name": "SbR",
"score": 30
},
{
"format": 114,
"name": "nmd",
"score": 30
},
{
"format": 113,
"name": "TBB",
"score": 30
},
{
"format": 112,
"name": "EA",
"score": 40
},
{
"format": 111,
"name": "BMF",
"score": 40
},
{
"format": 110,
"name": "LolHD",
"score": 40
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 40
},
{
"format": 108,
"name": "IDE",
"score": 40
},
{
"format": 107,
"name": "de[42]",
"score": 50
},
{
"format": 106,
"name": "NCmt",
"score": 60
},
{
"format": 105,
"name": "decibeL",
"score": 50
},
{
"format": 104,
"name": "NTb",
"score": 40
},
{
"format": 103,
"name": "CRiSC",
"score": 50
},
{
"format": 102,
"name": "SA89",
"score": 60
},
{
"format": 101,
"name": "HiDt",
"score": 60
},
{
"format": 100,
"name": "FoRM",
"score": 60
},
{
"format": 99,
"name": "HiFi",
"score": 60
},
{
"format": 98,
"name": "CtrlHD",
"score": 60
},
{
"format": 97,
"name": "VietHD",
"score": 70
},
{
"format": 96,
"name": "ZQ",
"score": 70
},
{
"format": 95,
"name": "TayTo",
"score": 70
},
{
"format": 94,
"name": "Geek",
"score": 70
},
{
"format": 93,
"name": "EbP",
"score": 80
},
{
"format": 92,
"name": "DON",
"score": 80
},
{
"format": 91,
"name": "D-Z0N3",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,912 @@
[
{
"name": "1080p h265 Balanced (Single Grab)",
"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": "Else",
"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
},
{
"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": "Balanced 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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": false
}
],
"minFormatScore": 0,
"cutoffFormatScore": 0,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": 60
},
{
"format": 214,
"name": "LQ",
"score": 0
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": 0
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 0
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 0
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": -9999
},
{
"format": 201,
"name": "HDR10",
"score": -9999
},
{
"format": 200,
"name": "Dolby Vision",
"score": -9999
},
{
"format": 199,
"name": "HDR10+",
"score": -9999
},
{
"format": 198,
"name": "Stream Optimised",
"score": 80
},
{
"format": 197,
"name": "LoRD",
"score": 30
},
{
"format": 196,
"name": "Scene",
"score": 20
},
{
"format": 195,
"name": "mHD",
"score": -99999
},
{
"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": 30
},
{
"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": 90
},
{
"format": 183,
"name": "ROKU",
"score": 190
},
{
"format": 182,
"name": "BeyondHD",
"score": -9999
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 30
},
{
"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": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 90
},
{
"format": 165,
"name": "Paramount+",
"score": 190
},
{
"format": 164,
"name": "Peacock TV",
"score": 190
},
{
"format": 163,
"name": "Hulu",
"score": 190
},
{
"format": 162,
"name": "Netflix",
"score": 200
},
{
"format": 161,
"name": "HBO Max",
"score": 200
},
{
"format": 160,
"name": "Disney+",
"score": 200
},
{
"format": 159,
"name": "Apple TV+",
"score": 210
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 220
},
{
"format": 157,
"name": "Amazon Prime",
"score": 210
},
{
"format": 156,
"name": "REMUX",
"score": -9999
},
{
"format": 155,
"name": "x264",
"score": 10
},
{
"format": 154,
"name": "WEBRip",
"score": 10
},
{
"format": 153,
"name": "Blu-Ray",
"score": 10
},
{
"format": 152,
"name": "2160p",
"score": -9999
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": 220
},
{
"format": 149,
"name": "BHDStudio",
"score": 90
},
{
"format": 148,
"name": "LEGi0N",
"score": 20
},
{
"format": 147,
"name": "FraMeSToR",
"score": 20
},
{
"format": 146,
"name": "iFT",
"score": 30
},
{
"format": 145,
"name": "MTeam",
"score": -9999
},
{
"format": 144,
"name": "EDPH",
"score": 20
},
{
"format": 143,
"name": "HANDJOB",
"score": 20
},
{
"format": 142,
"name": "c0ke",
"score": 70
},
{
"format": 141,
"name": "KASHMiR",
"score": 30
},
{
"format": 140,
"name": "WMING",
"score": 30
},
{
"format": 139,
"name": "playHD",
"score": 30
},
{
"format": 138,
"name": "E.N.D",
"score": 30
},
{
"format": 137,
"name": "GutS",
"score": 30
},
{
"format": 136,
"name": "BV",
"score": 30
},
{
"format": 135,
"name": "SiMPLE",
"score": 30
},
{
"format": 134,
"name": "W4NK3R",
"score": 30
},
{
"format": 133,
"name": "GS88",
"score": 30
},
{
"format": 132,
"name": "HiP",
"score": 40
},
{
"format": 131,
"name": "GALAXY",
"score": 30
},
{
"format": 130,
"name": "luvBB",
"score": 30
},
{
"format": 129,
"name": "NyHD",
"score": 30
},
{
"format": 128,
"name": "ZIMBO",
"score": 30
},
{
"format": 127,
"name": "ThD",
"score": 30
},
{
"format": 126,
"name": "SaNcTi",
"score": 30
},
{
"format": 125,
"name": "ORiGEN",
"score": 30
},
{
"format": 124,
"name": "Positive",
"score": 30
},
{
"format": 123,
"name": "ESiR",
"score": 30
},
{
"format": 122,
"name": "Chotab",
"score": 30
},
{
"format": 121,
"name": "xander",
"score": 30
},
{
"format": 120,
"name": "FTW-HD",
"score": 30
},
{
"format": 119,
"name": "Penumbra",
"score": 30
},
{
"format": 118,
"name": "TDD",
"score": 30
},
{
"format": 117,
"name": "Dariush SD",
"score": 30
},
{
"format": 116,
"name": "PTer",
"score": 30
},
{
"format": 115,
"name": "SbR",
"score": 30
},
{
"format": 114,
"name": "nmd",
"score": 30
},
{
"format": 113,
"name": "TBB",
"score": 30
},
{
"format": 112,
"name": "EA",
"score": 40
},
{
"format": 111,
"name": "BMF",
"score": 40
},
{
"format": 110,
"name": "LolHD",
"score": 40
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 40
},
{
"format": 108,
"name": "IDE",
"score": 40
},
{
"format": 107,
"name": "de[42]",
"score": 50
},
{
"format": 106,
"name": "NCmt",
"score": 60
},
{
"format": 105,
"name": "decibeL",
"score": 50
},
{
"format": 104,
"name": "NTb",
"score": 40
},
{
"format": 103,
"name": "CRiSC",
"score": 50
},
{
"format": 102,
"name": "SA89",
"score": 60
},
{
"format": 101,
"name": "HiDt",
"score": 60
},
{
"format": 100,
"name": "FoRM",
"score": 60
},
{
"format": 99,
"name": "HiFi",
"score": 60
},
{
"format": 98,
"name": "CtrlHD",
"score": 60
},
{
"format": 97,
"name": "VietHD",
"score": 70
},
{
"format": 96,
"name": "ZQ",
"score": 70
},
{
"format": 95,
"name": "TayTo",
"score": 70
},
{
"format": 94,
"name": "Geek",
"score": 70
},
{
"format": 93,
"name": "EbP",
"score": 80
},
{
"format": 92,
"name": "DON",
"score": 80
},
{
"format": 91,
"name": "D-Z0N3",
"score": 80
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
}
]
}
]

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
[
{
"name": "Optimal",
"name": "2160p Optimal (Single Grab)",
"upgradeAllowed": true,
"cutoff": 31,
"items": [
@@ -359,6 +359,21 @@
"minFormatScore": 0,
"cutoffFormatScore": 0,
"formatItems": [
{
"format": 335,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 334,
"name": "PCM",
"score": 0
},
{
"format": 333,
"name": "h265",
"score": 0
},
{
"format": 331,
"name": "Golden Popcorn 720p",

View File

@@ -0,0 +1,919 @@
[
{
"name": "2160p Optimal (Single Grab)",
"upgradeAllowed": true,
"cutoff": 21,
"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": false
},
{
"quality": {
"id": 12,
"name": "WEBRip-480p",
"source": "webRip",
"resolution": 480
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 8,
"name": "WEBDL-480p",
"source": "web",
"resolution": 480
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 2,
"name": "DVD",
"source": "dvd",
"resolution": 480
},
"items": [],
"allowed": false
}
],
"allowed": false,
"id": 1003
},
{
"name": "Fallback 1080p",
"items": [
{
"quality": {
"id": 10,
"name": "Raw-HD",
"source": "televisionRaw",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 9,
"name": "HDTV-1080p",
"source": "television",
"resolution": 1080
},
"items": [],
"allowed": false
}
],
"allowed": false,
"id": 1002
},
{
"name": "Transparent Capable",
"items": [
{
"quality": {
"id": 3,
"name": "WEBDL-1080p",
"source": "web",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 15,
"name": "WEBRip-1080p",
"source": "webRip",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 7,
"name": "Bluray-1080p",
"source": "bluray",
"resolution": 1080
},
"items": [],
"allowed": false
}
],
"allowed": false,
"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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": true
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": true
}
],
"minFormatScore": 0,
"cutoffFormatScore": 0,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": -9999
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 10
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 50
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": 10
},
{
"format": 201,
"name": "HDR10",
"score": 10
},
{
"format": 200,
"name": "Dolby Vision",
"score": 30
},
{
"format": 199,
"name": "HDR10+",
"score": 20
},
{
"format": 198,
"name": "Stream Optimised",
"score": 0
},
{
"format": 197,
"name": "LoRD",
"score": 0
},
{
"format": 196,
"name": "Scene",
"score": 0
},
{
"format": 195,
"name": "mHD",
"score": 0
},
{
"format": 194,
"name": "AV-1",
"score": -9999
},
{
"format": 193,
"name": "VVC",
"score": -9999
},
{
"format": 192,
"name": "Extras",
"score": -9999
},
{
"format": 191,
"name": "480p",
"score": -9999
},
{
"format": 190,
"name": "Dariush ",
"score": 0
},
{
"format": 189,
"name": "TBB SD",
"score": 0
},
{
"format": 188,
"name": "Xvid",
"score": -9999
},
{
"format": 187,
"name": "DVD",
"score": -9999
},
{
"format": 186,
"name": "DVD REMUX ",
"score": -9999
},
{
"format": 185,
"name": "HANDJOB SD",
"score": 0
},
{
"format": 184,
"name": "iTunes (Missing)",
"score": 10
},
{
"format": 183,
"name": "ROKU",
"score": 20
},
{
"format": 182,
"name": "BeyondHD",
"score": 0
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 0
},
{
"format": 177,
"name": "Black and White",
"score": 0
},
{
"format": 176,
"name": "TrueHD",
"score": 50
},
{
"format": 175,
"name": "DTS-X",
"score": 60
},
{
"format": 174,
"name": "FLAC",
"score": 40
},
{
"format": 173,
"name": "DTS-HD MA",
"score": 40
},
{
"format": 172,
"name": "x265",
"score": -9999
},
{
"format": 171,
"name": "IMAX",
"score": 0
},
{
"format": 170,
"name": "ATMOS",
"score": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 10
},
{
"format": 165,
"name": "Paramount+",
"score": 20
},
{
"format": 164,
"name": "Peacock TV",
"score": 20
},
{
"format": 163,
"name": "Hulu",
"score": 20
},
{
"format": 162,
"name": "Netflix",
"score": 30
},
{
"format": 161,
"name": "HBO Max",
"score": 30
},
{
"format": 160,
"name": "Disney+",
"score": 30
},
{
"format": 159,
"name": "Apple TV+",
"score": 40
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 50
},
{
"format": 157,
"name": "Amazon Prime",
"score": 40
},
{
"format": 156,
"name": "REMUX",
"score": 60
},
{
"format": 155,
"name": "x264",
"score": -9999
},
{
"format": 154,
"name": "WEBRip",
"score": -9999
},
{
"format": 153,
"name": "Blu-Ray",
"score": 60
},
{
"format": 152,
"name": "2160p",
"score": 60
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": -9999
},
{
"format": 149,
"name": "BHDStudio",
"score": 0
},
{
"format": 148,
"name": "LEGi0N",
"score": 0
},
{
"format": 147,
"name": "FraMeSToR",
"score": 0
},
{
"format": 146,
"name": "iFT",
"score": 0
},
{
"format": 145,
"name": "MTeam",
"score": 0
},
{
"format": 144,
"name": "EDPH",
"score": 0
},
{
"format": 143,
"name": "HANDJOB",
"score": 0
},
{
"format": 142,
"name": "c0ke",
"score": 0
},
{
"format": 141,
"name": "KASHMiR",
"score": 0
},
{
"format": 140,
"name": "WMING",
"score": 0
},
{
"format": 139,
"name": "playHD",
"score": 0
},
{
"format": 138,
"name": "E.N.D",
"score": 0
},
{
"format": 137,
"name": "GutS",
"score": 0
},
{
"format": 136,
"name": "BV",
"score": 0
},
{
"format": 135,
"name": "SiMPLE",
"score": 0
},
{
"format": 134,
"name": "W4NK3R",
"score": 0
},
{
"format": 133,
"name": "GS88",
"score": 0
},
{
"format": 132,
"name": "HiP",
"score": 0
},
{
"format": 131,
"name": "GALAXY",
"score": 0
},
{
"format": 130,
"name": "luvBB",
"score": 0
},
{
"format": 129,
"name": "NyHD",
"score": 0
},
{
"format": 128,
"name": "ZIMBO",
"score": 0
},
{
"format": 127,
"name": "ThD",
"score": 0
},
{
"format": 126,
"name": "SaNcTi",
"score": 0
},
{
"format": 125,
"name": "ORiGEN",
"score": 0
},
{
"format": 124,
"name": "Positive",
"score": 0
},
{
"format": 123,
"name": "ESiR",
"score": 0
},
{
"format": 122,
"name": "Chotab",
"score": 0
},
{
"format": 121,
"name": "xander",
"score": 0
},
{
"format": 120,
"name": "FTW-HD",
"score": 0
},
{
"format": 119,
"name": "Penumbra",
"score": 0
},
{
"format": 118,
"name": "TDD",
"score": 0
},
{
"format": 117,
"name": "Dariush SD",
"score": 0
},
{
"format": 116,
"name": "PTer",
"score": 0
},
{
"format": 115,
"name": "SbR",
"score": 0
},
{
"format": 114,
"name": "nmd",
"score": 0
},
{
"format": 113,
"name": "TBB",
"score": 0
},
{
"format": 112,
"name": "EA",
"score": 0
},
{
"format": 111,
"name": "BMF",
"score": 0
},
{
"format": 110,
"name": "LolHD",
"score": 0
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 0
},
{
"format": 108,
"name": "IDE",
"score": 0
},
{
"format": 107,
"name": "de[42]",
"score": 0
},
{
"format": 106,
"name": "NCmt",
"score": 0
},
{
"format": 105,
"name": "decibeL",
"score": 0
},
{
"format": 104,
"name": "NTb",
"score": 0
},
{
"format": 103,
"name": "CRiSC",
"score": 0
},
{
"format": 102,
"name": "SA89",
"score": 0
},
{
"format": 101,
"name": "HiDt",
"score": 0
},
{
"format": 100,
"name": "FoRM",
"score": 0
},
{
"format": 99,
"name": "HiFi",
"score": 0
},
{
"format": 98,
"name": "CtrlHD",
"score": 0
},
{
"format": 97,
"name": "VietHD",
"score": 0
},
{
"format": 96,
"name": "ZQ",
"score": 0
},
{
"format": 95,
"name": "TayTo",
"score": 0
},
{
"format": 94,
"name": "Geek",
"score": 0
},
{
"format": 93,
"name": "EbP",
"score": 0
},
{
"format": 92,
"name": "DON",
"score": 0
},
{
"format": 91,
"name": "D-Z0N3",
"score": 0
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
}
]
}
]

View File

@@ -0,0 +1,919 @@
[
{
"name": "2160p Optimal",
"upgradeAllowed": true,
"cutoff": 21,
"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": false
},
{
"quality": {
"id": 12,
"name": "WEBRip-480p",
"source": "webRip",
"resolution": 480
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 8,
"name": "WEBDL-480p",
"source": "web",
"resolution": 480
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 2,
"name": "DVD",
"source": "dvd",
"resolution": 480
},
"items": [],
"allowed": false
}
],
"allowed": false,
"id": 1003
},
{
"name": "Fallback 1080p",
"items": [
{
"quality": {
"id": 10,
"name": "Raw-HD",
"source": "televisionRaw",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 9,
"name": "HDTV-1080p",
"source": "television",
"resolution": 1080
},
"items": [],
"allowed": false
}
],
"allowed": false,
"id": 1002
},
{
"name": "Transparent Capable",
"items": [
{
"quality": {
"id": 3,
"name": "WEBDL-1080p",
"source": "web",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 15,
"name": "WEBRip-1080p",
"source": "webRip",
"resolution": 1080
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 7,
"name": "Bluray-1080p",
"source": "bluray",
"resolution": 1080
},
"items": [],
"allowed": false
}
],
"allowed": false,
"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": 19,
"name": "Bluray-2160p",
"source": "bluray",
"resolution": 2160
},
"items": [],
"allowed": false
},
{
"quality": {
"id": 18,
"name": "WEBDL-2160p",
"source": "web",
"resolution": 2160
},
"items": [],
"allowed": true
},
{
"quality": {
"id": 21,
"name": "Bluray-2160p Remux",
"source": "blurayRaw",
"resolution": 2160
},
"items": [],
"allowed": true
}
],
"minFormatScore": 0,
"cutoffFormatScore": 320,
"formatItems": [
{
"format": 226,
"name": "PCM",
"score": 0
},
{
"format": 225,
"name": "Blu-Ray (Remux)",
"score": 0
},
{
"format": 224,
"name": "h265",
"score": 0
},
{
"format": 223,
"name": "LiNG",
"score": 0
},
{
"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": -9999
},
{
"format": 205,
"name": "UHDBits",
"score": -9999
},
{
"format": 204,
"name": "ATMOS (Missing)",
"score": 10
},
{
"format": 203,
"name": "TrueHD (Missing)",
"score": 50
},
{
"format": 202,
"name": "HDR10 (Missing)",
"score": 10
},
{
"format": 201,
"name": "HDR10",
"score": 10
},
{
"format": 200,
"name": "Dolby Vision",
"score": 30
},
{
"format": 199,
"name": "HDR10+",
"score": 20
},
{
"format": 198,
"name": "Stream Optimised",
"score": 0
},
{
"format": 197,
"name": "LoRD",
"score": 0
},
{
"format": 196,
"name": "Scene",
"score": 0
},
{
"format": 195,
"name": "mHD",
"score": 0
},
{
"format": 194,
"name": "AV-1",
"score": -9999
},
{
"format": 193,
"name": "VVC",
"score": -9999
},
{
"format": 192,
"name": "Extras",
"score": -9999
},
{
"format": 191,
"name": "480p",
"score": -9999
},
{
"format": 190,
"name": "Dariush ",
"score": 0
},
{
"format": 189,
"name": "TBB SD",
"score": 0
},
{
"format": 188,
"name": "Xvid",
"score": -9999
},
{
"format": 187,
"name": "DVD",
"score": -9999
},
{
"format": 186,
"name": "DVD REMUX ",
"score": -9999
},
{
"format": 185,
"name": "HANDJOB SD",
"score": 0
},
{
"format": 184,
"name": "iTunes (Missing)",
"score": 10
},
{
"format": 183,
"name": "ROKU",
"score": 20
},
{
"format": 182,
"name": "BeyondHD",
"score": 0
},
{
"format": 181,
"name": "Disc ",
"score": -9999
},
{
"format": 180,
"name": "3D",
"score": -9999
},
{
"format": 179,
"name": "Unwanted",
"score": -9999
},
{
"format": 178,
"name": "RightSIZE",
"score": 0
},
{
"format": 177,
"name": "Black and White",
"score": 0
},
{
"format": 176,
"name": "TrueHD",
"score": 50
},
{
"format": 175,
"name": "DTS-X",
"score": 60
},
{
"format": 174,
"name": "FLAC",
"score": 40
},
{
"format": 173,
"name": "DTS-HD MA",
"score": 40
},
{
"format": 172,
"name": "x265",
"score": -9999
},
{
"format": 171,
"name": "IMAX",
"score": 0
},
{
"format": 170,
"name": "ATMOS",
"score": 10
},
{
"format": 169,
"name": "DD",
"score": 0
},
{
"format": 168,
"name": "DTS",
"score": 0
},
{
"format": 167,
"name": "DD+",
"score": 0
},
{
"format": 166,
"name": "iTunes",
"score": 10
},
{
"format": 165,
"name": "Paramount+",
"score": 20
},
{
"format": 164,
"name": "Peacock TV",
"score": 20
},
{
"format": 163,
"name": "Hulu",
"score": 20
},
{
"format": 162,
"name": "Netflix",
"score": 30
},
{
"format": 161,
"name": "HBO Max",
"score": 30
},
{
"format": 160,
"name": "Disney+",
"score": 30
},
{
"format": 159,
"name": "Apple TV+",
"score": 40
},
{
"format": 158,
"name": "Movies Anywhere",
"score": 50
},
{
"format": 157,
"name": "Amazon Prime",
"score": 40
},
{
"format": 156,
"name": "REMUX",
"score": 60
},
{
"format": 155,
"name": "x264",
"score": -9999
},
{
"format": 154,
"name": "WEBRip",
"score": -9999
},
{
"format": 153,
"name": "Blu-Ray",
"score": 60
},
{
"format": 152,
"name": "2160p",
"score": 60
},
{
"format": 151,
"name": "720p",
"score": -9999
},
{
"format": 150,
"name": "1080p",
"score": -9999
},
{
"format": 149,
"name": "BHDStudio",
"score": 0
},
{
"format": 148,
"name": "LEGi0N",
"score": 0
},
{
"format": 147,
"name": "FraMeSToR",
"score": 0
},
{
"format": 146,
"name": "iFT",
"score": 0
},
{
"format": 145,
"name": "MTeam",
"score": 0
},
{
"format": 144,
"name": "EDPH",
"score": 0
},
{
"format": 143,
"name": "HANDJOB",
"score": 0
},
{
"format": 142,
"name": "c0ke",
"score": 0
},
{
"format": 141,
"name": "KASHMiR",
"score": 0
},
{
"format": 140,
"name": "WMING",
"score": 0
},
{
"format": 139,
"name": "playHD",
"score": 0
},
{
"format": 138,
"name": "E.N.D",
"score": 0
},
{
"format": 137,
"name": "GutS",
"score": 0
},
{
"format": 136,
"name": "BV",
"score": 0
},
{
"format": 135,
"name": "SiMPLE",
"score": 0
},
{
"format": 134,
"name": "W4NK3R",
"score": 0
},
{
"format": 133,
"name": "GS88",
"score": 0
},
{
"format": 132,
"name": "HiP",
"score": 0
},
{
"format": 131,
"name": "GALAXY",
"score": 0
},
{
"format": 130,
"name": "luvBB",
"score": 0
},
{
"format": 129,
"name": "NyHD",
"score": 0
},
{
"format": 128,
"name": "ZIMBO",
"score": 0
},
{
"format": 127,
"name": "ThD",
"score": 0
},
{
"format": 126,
"name": "SaNcTi",
"score": 0
},
{
"format": 125,
"name": "ORiGEN",
"score": 0
},
{
"format": 124,
"name": "Positive",
"score": 0
},
{
"format": 123,
"name": "ESiR",
"score": 0
},
{
"format": 122,
"name": "Chotab",
"score": 0
},
{
"format": 121,
"name": "xander",
"score": 0
},
{
"format": 120,
"name": "FTW-HD",
"score": 0
},
{
"format": 119,
"name": "Penumbra",
"score": 0
},
{
"format": 118,
"name": "TDD",
"score": 0
},
{
"format": 117,
"name": "Dariush SD",
"score": 0
},
{
"format": 116,
"name": "PTer",
"score": 0
},
{
"format": 115,
"name": "SbR",
"score": 0
},
{
"format": 114,
"name": "nmd",
"score": 0
},
{
"format": 113,
"name": "TBB",
"score": 0
},
{
"format": 112,
"name": "EA",
"score": 0
},
{
"format": 111,
"name": "BMF",
"score": 0
},
{
"format": 110,
"name": "LolHD",
"score": 0
},
{
"format": 109,
"name": "HDMaNiAcS",
"score": 0
},
{
"format": 108,
"name": "IDE",
"score": 0
},
{
"format": 107,
"name": "de[42]",
"score": 0
},
{
"format": 106,
"name": "NCmt",
"score": 0
},
{
"format": 105,
"name": "decibeL",
"score": 0
},
{
"format": 104,
"name": "NTb",
"score": 0
},
{
"format": 103,
"name": "CRiSC",
"score": 0
},
{
"format": 102,
"name": "SA89",
"score": 0
},
{
"format": 101,
"name": "HiDt",
"score": 0
},
{
"format": 100,
"name": "FoRM",
"score": 0
},
{
"format": 99,
"name": "HiFi",
"score": 0
},
{
"format": 98,
"name": "CtrlHD",
"score": 0
},
{
"format": 97,
"name": "VietHD",
"score": 0
},
{
"format": 96,
"name": "ZQ",
"score": 0
},
{
"format": 95,
"name": "TayTo",
"score": 0
},
{
"format": 94,
"name": "Geek",
"score": 0
},
{
"format": 93,
"name": "EbP",
"score": 0
},
{
"format": 92,
"name": "DON",
"score": 0
},
{
"format": 91,
"name": "D-Z0N3",
"score": 0
},
{
"format": 215,
"name": "CJ",
"score": 0
},
{
"format": 216,
"name": "pcroland",
"score": 0
},
{
"format": 217,
"name": "BTN",
"score": 0
},
{
"format": 218,
"name": "iON",
"score": 0
},
{
"format": 219,
"name": "AJP69",
"score": 0
},
{
"format": 220,
"name": "VLAD",
"score": 0
},
{
"format": 221,
"name": "hdalx",
"score": 0
}
]
}
]

BIN
requirements.txt Normal file

Binary file not shown.

47
syncarr.py Normal file
View File

@@ -0,0 +1,47 @@
import yaml
import json
import shutil
import os
import exportarr # Assuming this module contains the export functions
import importarr # Assuming this module contains the import functions
def sync_data(sync_mode=False):
# Load configuration from YAML file
with open('config.yml', 'r') as config_file:
config = yaml.safe_load(config_file)
# Specify the temporary path where files will be saved
temp_cf_path = './temp_directory/custom_formats'
temp_qf_path = './temp_directory/quality_profiles'
# Get user choice for app (radarr/sonarr)
app_choice = input("Select the app you want to sync:\n1. Radarr\n2. Sonarr\nEnter your choice (1 or 2): ").strip()
while app_choice not in ["1", "2"]:
print("Invalid input. Please enter 1 for Radarr or 2 for Sonarr.")
app_choice = input("Enter your choice (1 or 2): ").strip()
app_choice = "radarr" if app_choice == "1" else "sonarr"
instance_name = "temp"
exportarr.export_cf(app_choice, instance_name, save_path=temp_cf_path)
exportarr.export_qf(app_choice, instance_name, save_path=temp_qf_path)
# Sync with each extra installation of the chosen app
for extra_instance in config['instances'].get('extras', {}).get(app_choice, []):
print(f"Importing to instance: {extra_instance['name']}")
# Import custom formats and quality profiles to each extra instance
extra_instance['app_name'] = app_choice
importarr.import_custom_formats(extra_instance, import_path=temp_cf_path, selected_files=None, sync_mode=sync_mode)
importarr.import_quality_profiles(extra_instance, import_path=temp_qf_path, selected_files=None, sync_mode=sync_mode)
# Delete the temporary directories after the sync is complete
temp_directory = './temp_directory'
if os.path.exists(temp_directory):
shutil.rmtree(temp_directory)
print(f"Deleted temporary directory: {temp_directory}")
if __name__ == "__main__":
# Set sync_mode to True to enable automatic selection of all files during import
sync_data(sync_mode=True)