688 lines
14 KiB
JSON
688 lines
14 KiB
JSON
[
|
|
{
|
|
"id": "langPref1",
|
|
"label": "Subtitle Language (1)",
|
|
"type": "enum",
|
|
"values": [
|
|
"sq",
|
|
"ar",
|
|
"be",
|
|
"bs",
|
|
"bg",
|
|
"ca",
|
|
"zh",
|
|
"cs",
|
|
"da",
|
|
"nl",
|
|
"en",
|
|
"et",
|
|
"fi",
|
|
"fr",
|
|
"de",
|
|
"el",
|
|
"he",
|
|
"hi",
|
|
"hu",
|
|
"is",
|
|
"id",
|
|
"it",
|
|
"ja",
|
|
"ko",
|
|
"lv",
|
|
"lt",
|
|
"mk",
|
|
"ms",
|
|
"no",
|
|
"fa",
|
|
"pl",
|
|
"pt",
|
|
"pt-br",
|
|
"ro",
|
|
"ru",
|
|
"sr",
|
|
"sk",
|
|
"sl",
|
|
"es",
|
|
"sv",
|
|
"th",
|
|
"tr",
|
|
"uk",
|
|
"vi",
|
|
"hr"
|
|
],
|
|
"default": "en"
|
|
},
|
|
{
|
|
"id": "langPref2",
|
|
"label": "Subtitle Language (2)",
|
|
"type": "enum",
|
|
"values": [
|
|
"None",
|
|
"sq",
|
|
"ar",
|
|
"be",
|
|
"bs",
|
|
"bg",
|
|
"ca",
|
|
"zh",
|
|
"cs",
|
|
"da",
|
|
"nl",
|
|
"en",
|
|
"et",
|
|
"fi",
|
|
"fr",
|
|
"de",
|
|
"el",
|
|
"he",
|
|
"hi",
|
|
"hu",
|
|
"is",
|
|
"id",
|
|
"it",
|
|
"ja",
|
|
"ko",
|
|
"lv",
|
|
"lt",
|
|
"mk",
|
|
"ms",
|
|
"no",
|
|
"fa",
|
|
"pl",
|
|
"pt",
|
|
"pt-br",
|
|
"ro",
|
|
"ru",
|
|
"sr",
|
|
"sk",
|
|
"sl",
|
|
"es",
|
|
"sv",
|
|
"th",
|
|
"tr",
|
|
"uk",
|
|
"vi",
|
|
"hr"
|
|
],
|
|
"default": "None"
|
|
},
|
|
{
|
|
"id": "langPref3",
|
|
"label": "Subtitle Language (3)",
|
|
"type": "enum",
|
|
"values": [
|
|
"None",
|
|
"sq",
|
|
"ar",
|
|
"be",
|
|
"bs",
|
|
"bg",
|
|
"ca",
|
|
"zh",
|
|
"cs",
|
|
"da",
|
|
"nl",
|
|
"en",
|
|
"et",
|
|
"fi",
|
|
"fr",
|
|
"de",
|
|
"el",
|
|
"he",
|
|
"hi",
|
|
"hu",
|
|
"is",
|
|
"id",
|
|
"it",
|
|
"ja",
|
|
"ko",
|
|
"lv",
|
|
"lt",
|
|
"mk",
|
|
"ms",
|
|
"no",
|
|
"fa",
|
|
"pl",
|
|
"pt",
|
|
"pt-br",
|
|
"ro",
|
|
"ru",
|
|
"sr",
|
|
"sk",
|
|
"sl",
|
|
"es",
|
|
"sv",
|
|
"th",
|
|
"tr",
|
|
"uk",
|
|
"vi",
|
|
"hr"
|
|
],
|
|
"default": "None"
|
|
},
|
|
{
|
|
"id": "langPrefCustom",
|
|
"label": "Additional Subtitle Languages (use ISO-639-1 codes; comma-separated)",
|
|
"type": "text",
|
|
"default": "None"
|
|
},
|
|
{
|
|
"id": "subtitles.only_foreign",
|
|
"label": "Only download foreign/forced subtitles",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.language.ietf",
|
|
"label": "Treat IETF language tags as ISO 639-1 (e.g. pt-BR = pt)",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.only_one",
|
|
"label": "Restrict to one language (skips adding \".lang.\" to the subtitle filename; only uses \"Subtitle Language (1)\")",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.language.treat_und_as_first",
|
|
"label": "Embedded subtitles: Treat \"Undefined\" (und) as language 1",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.opensubtitles.enabled",
|
|
"label": "Provider: Enable OpenSubtitles",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.opensubtitles.username",
|
|
"label": "Opensubtitles Username (VIP)",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "provider.opensubtitles.password",
|
|
"label": "Opensubtitles Password",
|
|
"type": "text",
|
|
"option": "hidden",
|
|
"default": "",
|
|
"secure": "true"
|
|
},
|
|
{
|
|
"id": "provider.podnapisi.enabled",
|
|
"label": "Provider: Enable Podnapisi.NET",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.addic7ed.enabled",
|
|
"label": "Provider: Enable Addic7ed",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.addic7ed.username",
|
|
"label": "Addic7ed Username",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "provider.addic7ed.password",
|
|
"label": "Addic7ed Password",
|
|
"type": "text",
|
|
"option": "hidden",
|
|
"default": "",
|
|
"secure": "true"
|
|
},
|
|
{
|
|
"id": "provider.addic7ed.boost_by1",
|
|
"label": "Addic7ed: boost score (if requirements met)",
|
|
"type": "enum",
|
|
"values": [
|
|
"100",
|
|
"95",
|
|
"90",
|
|
"85",
|
|
"80",
|
|
"75",
|
|
"70",
|
|
"67",
|
|
"65",
|
|
"60",
|
|
"55",
|
|
"50",
|
|
"45",
|
|
"40",
|
|
"35",
|
|
"30",
|
|
"25",
|
|
"21",
|
|
"20",
|
|
"15",
|
|
"10",
|
|
"5",
|
|
"0"
|
|
],
|
|
"default": "21"
|
|
},
|
|
{
|
|
"id": "provider.addic7ed.use_random_agents",
|
|
"label": "Addic7ed: Use random user agents",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "provider.legendastv.enabled",
|
|
"label": "Provider: Enable Legendas TV (mostly pt-BR)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "provider.legendastv.username",
|
|
"label": "Legendas TV Username",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "provider.legendastv.password",
|
|
"label": "Legendas TV Password",
|
|
"type": "text",
|
|
"option": "hidden",
|
|
"default": "",
|
|
"secure": "true"
|
|
},
|
|
{
|
|
"id": "provider.tvsubtitles.enabled",
|
|
"label": "Provider: Enable TVsubtitles.net",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.napiprojekt.enabled",
|
|
"label": "Provider: Enable NapiProjekt.pl (Polish)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "provider.shooter.enabled",
|
|
"label": "Provider: Enable Shooter.cn (Chinese)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "provider.subscenter.enabled",
|
|
"label": "Provider: Enable SubsCenter (Hebrew)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "provider.subscenter.username",
|
|
"label": "SubsCenter Username",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "provider.subscenter.password",
|
|
"label": "SubsCenter Password",
|
|
"type": "text",
|
|
"option": "hidden",
|
|
"default": "",
|
|
"secure": "true"
|
|
},
|
|
{
|
|
"id": "providers.multithreading",
|
|
"label": "Search enabled providers simultaneously (multithreading)",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "provider.opensubtitles.use_tags",
|
|
"label": "I keep the exact (release-) filename of my media files",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.scan.embedded",
|
|
"label": "Scan: include embedded subtitles (in the media file (MKV/MP4), don't download if existing)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.scan.external",
|
|
"label": "Scan: include external subtitles (metadata/filesystem, don't download if existing)",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.scan.exotic_ext",
|
|
"label": "Scan: include \"exotic\" subtitle formats (anything else than .srt/.ssa/.ass; embedded or external)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.scan.filename_strictness",
|
|
"label": "Scan: which external subtitles should be picked up?",
|
|
"type": "enum",
|
|
"values": [
|
|
"exact: media filename match",
|
|
"loose: filename contains media filename",
|
|
"any"
|
|
],
|
|
"default": "loose: filename contains media filename"
|
|
},
|
|
{
|
|
"id": "subtitles.search.minimumTVScore2",
|
|
"label": "Minimum score for TV (min: 240, def/sane: 337, min-ideal: 352; see http://v.ht/szscores)",
|
|
"type": "text",
|
|
"default": "337"
|
|
},
|
|
{
|
|
"id": "subtitles.search.minimumMovieScore2",
|
|
"label": "Minimum score for movies (min: 60, def/sane: 69, min-ideal: 82; see http://v.ht/szscores)",
|
|
"type": "text",
|
|
"default": "60"
|
|
},
|
|
{
|
|
"id": "subtitles.search.hearingImpaired",
|
|
"label": "Download hearing impaired subtitles.",
|
|
"type": "enum",
|
|
"values": [
|
|
"prefer",
|
|
"don't prefer",
|
|
"force HI",
|
|
"force non-HI"
|
|
],
|
|
"default": "don't prefer"
|
|
},
|
|
{
|
|
"id": "subtitles.remove_hi",
|
|
"label": "Remove Hearing Impaired tags from downloaded subtitles",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.fix_common",
|
|
"label": "Fix common whitespace/punctuation issues in subtitles",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.fix_ocr",
|
|
"label": "Fix common OCR errors in downloaded subtitles",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.enforce_encoding",
|
|
"label": "Normalize subtitle encoding to UTF-8 (highly recommended!)",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.colors",
|
|
"label": "Change colors of subtitles to",
|
|
"type": "enum",
|
|
"values": [
|
|
"don't change",
|
|
"white",
|
|
"light-grey",
|
|
"red",
|
|
"green",
|
|
"yellow",
|
|
"blue",
|
|
"magenta",
|
|
"cyan",
|
|
"black",
|
|
"dark-red",
|
|
"dark-green",
|
|
"dark-yellow",
|
|
"dark-blue",
|
|
"dark-magenta",
|
|
"dark-cyan",
|
|
"dark-grey"
|
|
],
|
|
"default": "don't change"
|
|
},
|
|
{
|
|
"id": "subtitles.save.filesystem",
|
|
"label": "Store subtitles next to media files (instead of metadata)",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "subtitles.save.subFolder",
|
|
"label": "Subtitle Folder (\"current folder\" is the folder the current media file lives in)",
|
|
"type": "enum",
|
|
"values": [
|
|
"current folder",
|
|
"sub",
|
|
"subs",
|
|
"subtitle",
|
|
"subtitles"
|
|
],
|
|
"default": "current folder"
|
|
},
|
|
{
|
|
"id": "subtitles.save.subFolder.Custom",
|
|
"label": "Custom Subtitle folder (overrides \"Subtitle Folder\"; computes to real paths)",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "subtitles.save.metadata_fallback",
|
|
"label": "Fall back to metadata storage if filesystem storage failed",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.save.chmod",
|
|
"label": "Set subtitle file permissions to (integer, e.g.: 0775)",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "subtitles.autoclean",
|
|
"label": "Automatically delete leftover/unused (externally saved) subtitles",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "activity.on_playback",
|
|
"label": "On media playback: search for missing subtitles (refresh item)",
|
|
"type": "enum",
|
|
"values": [
|
|
"never",
|
|
"current media item",
|
|
"next episode (series)",
|
|
"hybrid: current item or next episode"
|
|
],
|
|
"default": "never"
|
|
},
|
|
{
|
|
"id": "scheduler.tasks.SearchAllRecentlyAddedMissing.frequency",
|
|
"label": "Scheduler: Periodically search for recent items with missing subtitles",
|
|
"type": "enum",
|
|
"values": [
|
|
"never",
|
|
"every 1 hours",
|
|
"every 3 hours",
|
|
"every 6 hours",
|
|
"every 12 hours",
|
|
"every 24 hours"
|
|
],
|
|
"default": "every 6 hours"
|
|
},
|
|
{
|
|
"id": "scheduler.item_is_recent_age",
|
|
"label": "Scheduler: Item age to be considered recent",
|
|
"type": "enum",
|
|
"values": [
|
|
"1 days",
|
|
"2 days",
|
|
"3 days",
|
|
"4 days",
|
|
"1 weeks",
|
|
"2 weeks",
|
|
"3 weeks",
|
|
"4 weeks",
|
|
"5 weeks",
|
|
"6 weeks"
|
|
],
|
|
"default": "2 weeks"
|
|
},
|
|
{
|
|
"id": "scheduler.max_recent_items_per_library",
|
|
"label": "Scheduler: Recent items to consider per library",
|
|
"type": "text",
|
|
"default": "1000"
|
|
},
|
|
{
|
|
"id": "scheduler.tasks.FindBetterSubtitles.frequency",
|
|
"label": "Scheduler: Periodically search for better subtitles",
|
|
"type": "enum",
|
|
"values": [
|
|
"never",
|
|
"every 6 hours",
|
|
"every 12 hours",
|
|
"every 24 hours"
|
|
],
|
|
"default": "every 12 hours"
|
|
},
|
|
{
|
|
"id": "scheduler.tasks.FindBetterSubtitles.max_days_after_added",
|
|
"label": "Scheduler: Days to search for better subtitles (max: 30 days)",
|
|
"type": "text",
|
|
"default": "7"
|
|
},
|
|
{
|
|
"id": "scheduler.tasks.FindBetterSubtitles.overwrite_manually_selected",
|
|
"label": "Scheduler: Overwrite manually selected subtitles when better found",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "scheduler.tasks.FindBetterSubtitles.overwrite_manually_modified",
|
|
"label": "Scheduler: Overwrite subtitles with non-default subtitle modifications when better found",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "history_size",
|
|
"label": "History: amount of items to store historical data for",
|
|
"type": "enum",
|
|
"values": [
|
|
"50",
|
|
"100",
|
|
"150",
|
|
"250",
|
|
"500"
|
|
],
|
|
"default": "100"
|
|
},
|
|
{
|
|
"id": "subtitles.try_downloads",
|
|
"label": "How many download tries per subtitle (on timeout or error)",
|
|
"type": "enum",
|
|
"values": [
|
|
"1",
|
|
"2",
|
|
"3",
|
|
"4"
|
|
],
|
|
"default": "2"
|
|
},
|
|
{
|
|
"id": "subtitles.ignore_fs",
|
|
"label": "Ignore folders (with \"subzero.ignore/.subzero.ignore/.nosz\" files in them)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "subtitles.ignore_paths",
|
|
"label": "Ignore anything in the following paths (comma-separated)",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "plugin_mode",
|
|
"label": "Sub-Zero mode",
|
|
"type": "enum",
|
|
"values": [
|
|
"agent + channel",
|
|
"only agent",
|
|
"only channel"
|
|
],
|
|
"default": "agent + channel"
|
|
},
|
|
{
|
|
"id": "plugin_pin",
|
|
"label": "Access PIN (any amount of numbers, 0-9)",
|
|
"type": "text",
|
|
"option": "hidden",
|
|
"default": "",
|
|
"secure": "true"
|
|
},
|
|
{
|
|
"id": "plugin_pin_valid_for",
|
|
"label": "Access PIN valid for minutes",
|
|
"type": "text",
|
|
"default": "10"
|
|
},
|
|
{
|
|
"id": "plugin_pin_mode",
|
|
"label": "Use PIN to restrict access to (needs plugin or PMS restart)",
|
|
"type": "enum",
|
|
"values": [
|
|
"disabled",
|
|
"channel menu",
|
|
"advanced menu"
|
|
],
|
|
"default": "disabled"
|
|
},
|
|
{
|
|
"id": "notify_executable",
|
|
"label": "Call this executable upon successful subtitle download (see Wiki for details)",
|
|
"type": "text",
|
|
"default": ""
|
|
},
|
|
{
|
|
"id": "check_permissions",
|
|
"label": "Check for correct folder permissions of every library on plugin start",
|
|
"type": "bool",
|
|
"default": "true"
|
|
},
|
|
{
|
|
"id": "log_level",
|
|
"label": "How verbose should the logging be?",
|
|
"type": "enum",
|
|
"values": [
|
|
"CRITICAL",
|
|
"ERROR",
|
|
"WARNING",
|
|
"INFO",
|
|
"DEBUG"
|
|
],
|
|
"default": "WARNING"
|
|
},
|
|
{
|
|
"id": "log_debug_mods",
|
|
"label": "Log subtitle modification (debug)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "log_console",
|
|
"label": "Log to console (for development/debugging)",
|
|
"type": "bool",
|
|
"default": "false"
|
|
},
|
|
{
|
|
"id": "track_usage",
|
|
"label": "Collect anonymous usage statistics",
|
|
"type": "bool",
|
|
"default": "true"
|
|
}
|
|
]
|