diff --git a/.github/.wordlist.txt b/.github/.wordlist.txt index 25aabcb2..0d3b54d5 100644 --- a/.github/.wordlist.txt +++ b/.github/.wordlist.txt @@ -1,14 +1,17 @@ AAC accessModes +addon Addon +addons Adlib AFI's Amblin analytics +anidb AniDB AniDB's -AniList anilist +AniList AniList's API apikey @@ -25,21 +28,24 @@ BBFC bearlikelion Berlinale Bestest -BING bing +BING bitrate +bitrateH +bitrateL BOING boolean -BoxOfficeMojo boxofficemojo +BoxOfficeMojo BPjM -BritBox britbox +BritBox bullmoose burkasaurusrex bw Cappella cd +César chazlarson codec codecs @@ -50,36 +56,35 @@ cpp cpt CPUs cron -CronJob cronjob +CronJob crontab Crunchyroll customizable customizations -César -dbader d'Or +dbader de deva -DIIIVOY diiivoy +DIIIVOY diiivoycolor -DIR dir +DIR DiskStation DisneyToon dockerfile dockerfiles -DockerHub dockerhub +DockerHub dolby DreamWorks dropdown DTS DV Emmys -ENV env +ENV etree eventartworks favorited @@ -89,17 +94,18 @@ Fi filepath filetype FLAC -FlixPatrol flixpatrol +FlixPatrol fontawesome Fribb FSK Galician generalizable -GitHub github +GitHub githubusercontent gotify +gp Grenvilles GUID HAMA @@ -117,8 +123,8 @@ Hulu ICheckMovies ImageMaid IMAX -IMDb imdb +IMDb IMDb's IMDbList img @@ -146,39 +152,41 @@ kometautils Kubernetes kuesel Launchd +letterboxd Letterboxd LGBTQ Limburgish linas Lingala linux -LinuxServer linuxserver +LinuxServer linuxserver's localhost Looper Lossy -LSIO lsio +LSIO Luxembourgish -LXML lxml +LXML macOS mal -MB mb +MB MCU md mdb -MDBList mdblist -MediaStinger +MDBList mediastinger +MediaStinger mediastingers -MediUX mediux +MediUX meisnate metacritic +metacriticuser microsoft mikenobbs minikube @@ -187,8 +195,8 @@ Mojo's monetization Mossi MPAA -MyAnimeList myanimelist +MyAnimeList MyAnimeList's MyCollections MyOverlays @@ -202,9 +210,10 @@ Nokmål NOSUCHLIBRARY notifiarr Nynorsk -OAuth oauth +OAuth octicons +omdb OMDb oscar OSX @@ -213,8 +222,8 @@ Palme pathing PCM PersistentVolumeClaim -PGID pgid +PGID pkkid plex plex's @@ -229,15 +238,16 @@ portainer Powershell pre prepend +preroll psutil -PUID puid +PUID QNAP radarr Razzie Razzies -README Readme +README ReadWriteOnce reciperr reddit @@ -249,6 +259,8 @@ rholder RogerEvert Romani runtime +runtimeH +runtimeM runtimes schemas Sci-Fi @@ -279,16 +291,17 @@ Tautulli's TELESYNC Templatizing th -TheMovieDb themoviedb +TheMovieDb ThePosterDB TheTVDb -TMDb tmdb +TMDb TMDb's TMDbAPIs Toastjuh TODO +tomatoesaudience tomatometer trakt trakt's @@ -299,6 +312,7 @@ TrueHD ttf tutin tv +tvdb TVDb UI uncompress @@ -308,15 +322,15 @@ unplayed unraid unRAID URI -URL url +URL urls -UserList userlist +UserList utills Vecteezy -VENV venv +VENV visualstudio vladimir Wachowski @@ -338,8 +352,8 @@ xmen XYZ yaml yml -YourName yourname +YourName Yozora YozoraXCII YYYY diff --git a/docs/files/arr.md b/docs/files/arr.md index b9c50522..5f734c88 100644 --- a/docs/files/arr.md +++ b/docs/files/arr.md @@ -1,3 +1,40 @@ +--- +hide: + - tags +tags: + - radarr_add_missing + - radarr_add_existing + - radarr_upgrade_existing + - radarr_monitor_existing + - radarr_ignore_cache + - radarr_folder + - radarr_monitor + - radarr_availability + - radarr_quality + - radarr_tag + - radarr_search + - item_radarr_tag + - item_radarr_tag.remove + - item_radarr_tag.sync + - sonarr_add_missing + - sonarr_add_existing + - sonarr_upgrade_existing + - sonarr_monitor_existing + - sonarr_ignore_cache + - sonarr_folder + - sonarr_monitor + - sonarr_quality + - sonarr_language + - sonarr_series + - sonarr_season + - sonarr_tag + - sonarr_search + - sonarr_cutoff_search + - item_sonarr_tag + - item_sonarr_tag.remove + - item_sonarr_tag.sync +--- + # Radarr/Sonarr Definition Settings ## Radarr Definition Settings diff --git a/docs/files/dynamic.md b/docs/files/dynamic.md index 0852bf39..18aa89bf 100644 --- a/docs/files/dynamic.md +++ b/docs/files/dynamic.md @@ -1,3 +1,35 @@ +--- +hide: + - tags +tags: + - addons + - append_addons + - append_data + - append_exclude + - append_include + - custom_keys + - data + - exclude + - include + - key_name_override + - other_name + - other_template + - remove_addons + - remove_data + - remove_exclude + - remove_include + - remove_prefix + - remove_suffix + - sync + - template + - template_variables + - test + - title_format + - title_override + - tmdb_person + - type +--- + # Dynamic Collections Kometa can dynamically create collections based on different criteria, such as diff --git a/docs/files/filters.md b/docs/files/filters.md index 38ce9dde..5cdfa3fb 100644 --- a/docs/files/filters.md +++ b/docs/files/filters.md @@ -1,3 +1,507 @@ +--- +hide: + - tags +tags: + - actor + - added + - albums + - aspect + - audience_rating + - audio_language + - channels + - collection + - content_rating + - country + - critic_rating + - director + - duration + - episodes + - first_episode_aired + - genre + - has_collection + - has_dolby_vision + - has_edition + - has_overlay + - has_stinger + - height + - history + - imdb_keyword + - label + - last_episode_aired + - last_episode_aired_or_never + - last_played + - network + - origin_country + - original_language + - plays + - producer + - release + - resolution + - seasons + - stinger_rating + - subtitle_language + - tmdb_genre + - tmdb_keyword + - tmdb_status + - tmdb_type + - tmdb_vote_average + - tmdb_vote_count + - tmdb_year + - tracks + - tvdb_genre + - user_rating + - versions + - width + - writer + - year +--- + +# Filters + +Filters allow for you to filter every item added to the collection/overlay/playlist from every builder using the `filters` attribute. + +## Using Filters + +Filters cannot do anything alone they require the use of at least one [Builder](builders/overview.md) to function. + +You can have multiple filters in each set but an item must match at least one value from **each** filter to not be ignored. The values for each must match what Plex has including special characters in order to match. + +```yaml +filters: + genre: Action + country: Germany +``` + +Anything that doesn't have both the Genre `Action` and the Country `Germany` will be ignored. + +Multiple Filter Sets can be given as a list. With multiple sets only one of the sets must pass for the item to not be ignored. + +```yaml +filters: + - genre: Action + country: Germany + - genre: Comedy + country: France +``` + +Anything that doesn't have either both the Genre `Action` and the Country `Germany` or the Genre `Comedy` and the Country `France` will be ignored. + +All filter options are listed below. To display items filtered out add `show_filtered: true` to the definition. + +You can use the `plex_all: true` builder to filter from your entire library. + +???+ warning + + Filters can be very slow, particularly on larger libraries. Try to build or narrow your items using a [Smart Label Collection](builders/smart.md#smart-label), [Plex Search](builders/plex.md#plex-search) or another [Builder](overview.md) if possible. + +## String Filters + +String filters can be used with either no modifier or with `.not`, `.is`, `.isnot`, `.begins`, `.ends`, or `.regex`. + +String filters can take multiple values **only as a list**. + +### Modifier + +| String Modifier | Description | +|:----------------|:-------------------------------------------------------------------------------| +| No Modifier | Matches every item where the attribute contains the given string | +| `.not` | Matches every item where the attribute does not contain the given string | +| `.is` | Matches every item where the attribute exactly matches the given string | +| `.isnot` | Matches every item where the attribute does not exactly match the given string | +| `.begins` | Matches every item where the attribute begins with the given string | +| `.ends` | Matches every item where the attribute ends with the given string | +| `.regex` | Matches every item where the attribute matches the regex given | + +### Attribute + +| String Filter | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:----------------------------------------------------|:-----------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:-------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:| +| `title` | Uses the title attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `tmdb_title`**[2](#table-annotations)** | Uses the title from TMDb to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tvdb_title`**[2](#table-annotations)** | Uses the title from TVDb to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tvdb_status`**[2](#table-annotations)** | Uses the status from TVDb to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `summary` | Uses the summary attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `studio` | Uses the studio attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `edition` | Uses the edition attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `record_label` | Uses the record label attribute to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `folder` | Uses the item's folder to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `filepath` | Uses the item's filepath to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | +| `audio_track_title` | Uses the audio track titles to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | +| `video_codec` | Uses the video codec tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `video_profile` | Uses the video profile tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `audio_codec` | Uses the audio codec tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `audio_profile` | Uses the audio profile tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Tag Filters + +Tag filters can be used with either no modifier or with `.not`. + +Tag filters can take multiple values as a **list or a comma-separated string**. + +### Modifier + +| Tag Modifier | Description | +|:-------------|:------------------------------------------------------------------------------------------| +| No Modifier | Matches every item where the attribute matches the given string | +| `.not` | Matches every item where the attribute does not match the given string | +| `.regex` | Matches every item where one value of this attribute matches the regex. | +| `.count_lt` | Matches every item where the attribute count is less than the given number | +| `.count_lte` | Matches every item where the attribute count is less than the given number | +| `.count_gt` | Matches every item where the attribute count is greater than the given number | +| `.count_gte` | Matches every item where the attribute count is greater than or equal to the given number | + +### Attribute + +| Tag Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:-------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `actor` | Uses the actor tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `collection` | Uses the collection tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `content_rating` | Uses the content rating tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `network` | Uses the network tags to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `country` | Uses the country tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `director` | Uses the director tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `genre` | Uses the genre tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `label` | Uses the label tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `producer` | Uses the actor tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `year`**[3](#table-annotations)** | Uses the year tag to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `writer` | Uses the writer tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `resolution` | Uses the resolution tag to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `audio_language` | Uses the audio language tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `subtitle_language` | Uses the subtitle language tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_genre`**[2](#table-annotations)** | Uses the genres from TMDb to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_keyword`**[2](#table-annotations)** | Uses the keywords from TMDb to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `origin_country`**[2](#table-annotations)** | Uses TMDb origin country [ISO 3166-1 alpha-2 codes](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) to match
Example: `origin_country: us` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tvdb_genre`**[2](#table-annotations)** | Uses the genres from TVDb to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `imdb_keyword`**[2](#table-annotations)** | Uses the keywords from IMDb to match See [Special](#special-filters) for more attributes | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Boolean Filters + +Boolean Filters have no modifiers. + +### Attribute + +| Boolean Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:-------------------|:---------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `has_collection` | Matches every item that has or does not have a collection | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `has_edition` | Matches every item that has or does not have an edition | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_stinger` | Matches every item that has a [media stinger](http://www.mediastinger.com/) (After/During Credits Scene) | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_dolby_vision` | Matches every item that has or does not have a dolby vision | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_overlay` | Matches every item that has or does not have an overlay | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | + +## Date Filters + +Date filters can be used with either no modifier or with `.not`, `.before`, `.after`, or `.regex`. + +Date filters can **NOT** take multiple values. + +### Modifier + +| Date Modifier | Description | Format | +|:--------------|:----------------------------------------------------------------------|:--------------------------------------------------------------------------:| +| No Modifier | Matches every item where the date attribute is in the last X days | **Format:** number of days
e.g. `30` | +| `.not` | Matches every item where the date attribute is not in the last X days | **Format:** number of days
e.g. `30` | +| `.before` | Matches every item where the date attribute is before the given date | **Format:** MM/DD/YYYY or `today` for the current day
e.g. `01/01/2000` | +| `.after` | Matches every item where the date attribute is after the given date | **Format:** MM/DD/YYYY or `today` for the current day
e.g. `01/01/2000` | +| `.regex` | Matches every item where the attribute matches the regex given | N/A | + +### Attribute + +| Date Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:----------------------------------------------------------------|:-------------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `release` | Uses the release date attribute (originally available) to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `added` | Uses the date added attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `last_played` | Uses the date last played attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `first_episode_aired`**[2](#table-annotations)** | Uses the first episode aired date to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `last_episode_aired`**[2](#table-annotations) | Uses the last episode aired date to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `last_episode_aired_or_never`[2](#table-annotations) | Similar to `last_episode_aired` but also includes those that haven't aired yet | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Number Filters + +Number filters must use `.gt`, `.gte`, `.lt`, or `.lte` as a modifier. + +Number filters can **NOT** take multiple values. + +### Modifier + +| Number Modifier | Description | Format | +|:----------------|:-------------------------------------------------------------------------------------------|:-------------------------------------------------:| +| No Modifier | Matches every item where the number attribute is equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.not` | Matches every item where the number attribute is not equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.gt` | Matches every item where the number attribute is greater than the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.gte` | Matches every item where the number attribute is greater than or equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.lt` | Matches every item where the number attribute is less than the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.lte` | Matches every item where the number attribute is less than or equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | + +### Attribute + +| Number Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:----------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:| +| `year`**[3](#table-annotations)** | Uses the year attribute to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `tmdb_year`**[2](#table-annotations)****[3](#table-annotations)** | Uses the year on TMDb to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `critic_rating` | Uses the critic rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `audience_rating` | Uses the audience rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `user_rating` | Uses the user rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `tmdb_vote_count`**[2](#table-annotations)** | Uses the tmdb vote count to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_vote_average`**[2](#table-annotations)** | Uses the tmdb vote average rating to match
minimum: `0.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `plays` | Uses the plays attribute to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `duration` | Uses the duration attribute to match using minutes
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | +| `channels` | Uses the audio channels attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `height` | Uses the height attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `width` | Uses the width attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `aspect` | Uses the aspect attribute to match
minimum: `0.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `versions` | Uses the number of versions found to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | +| `stinger_rating`**[4](#table-annotations)** | Uses the [media stinger](http://www.mediastinger.com/) rating to match. The media stinger rating is if the after/during credits scene is worth staying for.
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Special Filters + +Special Filters each have their own set of rules for how they're used. + +### Attribute + +| Special Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:---------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:----------------------------------------:| +| `history` | Uses the release date attribute (originally available) to match dates throughout history
`day`: Match the Day and Month to Today's Date
`month`: Match the Month to Today's Date
`1-30`: Match the Day and Month to Today's Date or `1-30` days before Today's Date | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `episodes` | Uses the item's episodes attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items episodes that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `seasons` | Uses the item's seasons attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items seasons that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tracks` | Uses the item's tracks attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items tracks that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `albums` | Uses the item's albums attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items albums that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `original_language`**[2](#table-annotations)**
`original_language.not`**[2](#table-annotations)** | Uses TMDb original language [ISO 639-1 codes](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) to match
Example: `original_language: en, ko` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_status`**[2](#table-annotations)**
`tmdb_status.not`**[2](#table-annotations)** | Uses TMDb Status to match
**Values:** `returning`, `planned`, `production`, `ended`, `canceled`, `pilot` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_type`**[2](#table-annotations)**
`tmdb_type.not`**[2](#table-annotations)** | Uses TMDb Type to match
**Values:** `documentary`, `news`, `production`, `miniseries`, `reality`, `scripted`, `talk_show`, `video` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `imdb_keyword`**[2](#table-annotations)****[5](#table-annotations)** | Uses the keywords from IMDb to match
`keywords`: list of keywords to match
`minimum_votes`: minimum number of votes keywords must have
`minimum_relevant`: minimum number of relevant votes keywords must have
`minimum_percentage`: minimum percentage of relevant votes keywords must have | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Table Annotations + +**1** Filters using the special `episodes`/`tracks` [filter](#special-filters) with the [default percent](settings.md). + +**2** Also filters out missing movies/shows from being added to Radarr/Sonarr. These Values also cannot use the `count` modifiers. + +**3** You can use `current_year` to have Kometa use the current years value. This can be combined with a `-#` at the end to subtract that number of years. i.e. `current_year-2` + +**4** The actual numbers are pulled from the [Mediastingers](https://github.com/Kometa-Team/Mediastingers) Repo. + +**5** Also is a Tag Filter and can use all of those modifiers. + +## Collection Filter Examples + +A few examples are listed below: + +```yaml +collections: + 1080p Documentaries: + plex_search: + all: + genre: Documentary + summary: A collection of 1080p Documentaries + filters: + resolution: 1080 +``` +```yaml +collections: + Daniel Craig only James Bonds: + imdb_list: + list_id: ls006405458 + filters: + actor: Daniel Craig +``` +```yaml +collections: + French Romance: + plex_search: + all: + genre: Romance + filters: + audio_language: Français +``` +```yaml +collections: + Romantic Comedies: + plex_search: + all: + genre: Romance + filters: + genre: Comedy +``` +```yaml +collections: + 9.0 Movies: + plex_all: true + filters: + rating.gte: 9 +``` +```yaml +collections: + Summer 2020 Movies: + plex_all: true + filters: + release.after: 5/1/2020 + release.before: 8/31/2020 +``` +```yaml +collections: + Movies Released in the Last 180 Days: + plex_all: true + filters: + release: 180 +``` +```yaml +collections: + Good Adam Sandler Romantic Comedies: + plex_search: + all: + genre: Romance + actor: Adam Sandler + filters: + genre: Comedy + rating.gte: 7 +``` +```yaml +collections: + Movies with Commentary: + plex_all: true + filters: + audio_track_title: Commentary +``` +--- + +## Tag Filters + +Tag filters can be used with either no modifier or with `.not`. + +Tag filters can take multiple values as a **list or a comma-separated string**. + +### Modifier + +| Tag Modifier | Description | +|:-------------|:------------------------------------------------------------------------------------------| +| No Modifier | Matches every item where the attribute matches the given string | +| `.not` | Matches every item where the attribute does not match the given string | +| `.regex` | Matches every item where one value of this attribute matches the regex. | +| `.count_lt` | Matches every item where the attribute count is less than the given number | +| `.count_lte` | Matches every item where the attribute count is less than the given number | +| `.count_gt` | Matches every item where the attribute count is greater than the given number | +| `.count_gte` | Matches every item where the attribute count is greater than or equal to the given number | + +### Attribute + +| Tag Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:-------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `actor` | Uses the actor tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `collection` | Uses the collection tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `content_rating` | Uses the content rating tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `network` | Uses the network tags to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `country` | Uses the country tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `director` | Uses the director tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `genre` | Uses the genre tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `label` | Uses the label tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `producer` | Uses the actor tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `year`**[3](#table-annotations)** | Uses the year tag to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `writer` | Uses the writer tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `resolution` | Uses the resolution tag to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `audio_language` | Uses the audio language tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `subtitle_language` | Uses the subtitle language tags to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_genre`**[2](#table-annotations)** | Uses the genres from TMDb to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_keyword`**[2](#table-annotations)** | Uses the keywords from TMDb to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `origin_country`**[2](#table-annotations)** | Uses TMDb origin country [ISO 3166-1 alpha-2 codes](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) to match
Example: `origin_country: us` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tvdb_genre`**[2](#table-annotations)** | Uses the genres from TVDb to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `imdb_keyword`**[2](#table-annotations)** | Uses the keywords from IMDb to match See [Special](#special-filters) for more attributes | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Boolean Filters + +Boolean Filters have no modifiers. + +### Attribute + +| Boolean Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:-------------------|:---------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `has_collection` | Matches every item that has or does not have a collection | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `has_edition` | Matches every item that has or does not have an edition | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_stinger` | Matches every item that has a [media stinger](http://www.mediastinger.com/) (After/During Credits Scene) | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_dolby_vision` | Matches every item that has or does not have a dolby vision | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `has_overlay` | Matches every item that has or does not have an overlay | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | + +## Date Filters + +Date filters can be used with either no modifier or with `.not`, `.before`, `.after`, or `.regex`. + +Date filters can **NOT** take multiple values. + +### Modifier + +| Date Modifier | Description | Format | +|:--------------|:----------------------------------------------------------------------|:--------------------------------------------------------------------------:| +| No Modifier | Matches every item where the date attribute is in the last X days | **Format:** number of days
e.g. `30` | +| `.not` | Matches every item where the date attribute is not in the last X days | **Format:** number of days
e.g. `30` | +| `.before` | Matches every item where the date attribute is before the given date | **Format:** MM/DD/YYYY or `today` for the current day
e.g. `01/01/2000` | +| `.after` | Matches every item where the date attribute is after the given date | **Format:** MM/DD/YYYY or `today` for the current day
e.g. `01/01/2000` | +| `.regex` | Matches every item where the attribute matches the regex given | N/A | + +### Attribute + +| Date Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:----------------------------------------------------------------|:-------------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:| +| `release` | Uses the release date attribute (originally available) to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `added` | Uses the date added attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `last_played` | Uses the date last played attribute to match | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `first_episode_aired`**[2](#table-annotations)** | Uses the first episode aired date to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `last_episode_aired`**[2](#table-annotations) | Uses the last episode aired date to match | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `last_episode_aired_or_never`[2](#table-annotations) | Similar to `last_episode_aired` but also includes those that haven't aired yet | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Number Filters + +Number filters must use `.gt`, `.gte`, `.lt`, or `.lte` as a modifier. + +Number filters can **NOT** take multiple values. + +### Modifier + +| Number Modifier | Description | Format | +|:----------------|:-------------------------------------------------------------------------------------------|:-------------------------------------------------:| +| No Modifier | Matches every item where the number attribute is equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.not` | Matches every item where the number attribute is not equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.gt` | Matches every item where the number attribute is greater than the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.gte` | Matches every item where the number attribute is greater than or equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.lt` | Matches every item where the number attribute is less than the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | +| `.lte` | Matches every item where the number attribute is less than or equal to the given number | **Format:** number
e.g. `30`, `1995`, or `7.5` | + +### Attribute + +| Number Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:----------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:|:--------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------:|:------------------------------------------:| +| `year`**[3](#table-annotations)** | Uses the year attribute to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `tmdb_year`**[2](#table-annotations)****[3](#table-annotations)** | Uses the year on TMDb to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `critic_rating` | Uses the critic rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `audience_rating` | Uses the audience rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `user_rating` | Uses the user rating attribute to match
`0.0` - `10.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `tmdb_vote_count`**[2](#table-annotations)** | Uses the tmdb vote count to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_vote_average`**[2](#table-annotations)** | Uses the tmdb vote average rating to match
minimum: `0.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `plays` | Uses the plays attribute to match
minimum: `1` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | +| `duration` | Uses the duration attribute to match using minutes
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | +| `channels` | Uses the audio channels attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `height` | Uses the height attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `width` | Uses the width attribute to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `aspect` | Uses the aspect attribute to match
minimum: `0.0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `versions` | Uses the number of versions found to match
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green }**[1](#table-annotations)** | :fontawesome-solid-circle-check:{ .green } | +| `stinger_rating`**[4](#table-annotations)** | Uses the [media stinger](http://www.mediastinger.com/) rating to match. The media stinger rating is if the after/during credits scene is worth staying for.
minimum: `0` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | + +## Special Filters + +Special Filters each have their own set of rules for how they're used. + +### Attribute + +| Special Filters | Description | Movies | Shows | Seasons | Episodes | Artists | Albums | Track | +|:---------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:------------------------------------------:|:----------------------------------------:| +| `history` | Uses the release date attribute (originally available) to match dates throughout history
`day`: Match the Day and Month to Today's Date
`month`: Match the Month to Today's Date
`1-30`: Match the Day and Month to Today's Date or `1-30` days before Today's Date | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `episodes` | Uses the item's episodes attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items episodes that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `seasons` | Uses the item's seasons attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items seasons that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tracks` | Uses the item's tracks attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items tracks that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | +| `albums` | Uses the item's albums attributes to match
Use the `percentage` attribute given a number between 0-100 to determine the percentage of an items albums that must match the sub-filter. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `original_language`**[2](#table-annotations)**
`original_language.not`**[2](#table-annotations)** | Uses TMDb original language [ISO 639-1 codes](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) to match
Example: `original_language: en, ko` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_status`**[2](#table-annotations)**
`tmdb_status.not`**[2](#table-annotations)** | Uses TMDb Status to match
**Values:** `returning`, `planned`, `production`, `ended`, `canceled`, `pilot` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `tmdb_type`**[2](#table-annotations)**
`tmdb_type.not`**[2](#table-annotations)** | Uses TMDb Type to match
**Values:** `documentary`, `news`, `production`, `miniseries`, `reality`, `scripted`, `talk_show`, `video` | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | +| `imdb_keyword`**[2](#table-annotations)****[5](#table-annotations)** | Uses the keywords from IMDb to --- + # Filters Filters allow for you to filter every item added to the collection/overlay/playlist from every builder using the `filters` attribute. diff --git a/docs/files/item_updates.md b/docs/files/item_updates.md index 5c3c12eb..e779d336 100644 --- a/docs/files/item_updates.md +++ b/docs/files/item_updates.md @@ -1,7 +1,38 @@ --- search: boost: 3 +hide: + - tags +tags: + - addon_offset + - item_label + - item_label.remove + - item_label.sync + - item_genre + - item_genre.remove + - item_genre.sync + - item_edition + - non_item_remove_label + - item_lock_poster + - item_lock_background + - item_lock_title + - item_assets + - item_refresh + - item_refresh_delay + - item_tmdb_season_titles + - item_episode_sorting + - item_keep_episodes + - item_delete_episodes + - item_season_display + - item_episode_ordering + - item_metadata_language + - item_use_original_title + - item_credits_detection + - item_audio_language + - item_subtitle_language + - item_subtitle_mode --- + # Item Metadata Updates All the following attributes update various details of the metadata for every item in the collection. diff --git a/docs/files/metadata.md b/docs/files/metadata.md index a727c566..6c484563 100644 --- a/docs/files/metadata.md +++ b/docs/files/metadata.md @@ -1,3 +1,67 @@ +--- +hide: + - tags +tags: + - addon_offset + - album_sorting + - albums + - audience_rating + - audio_language + - blank_edition + - collection + - content_rating + - country + - credits_detection + - critic_rating + - delete_episodes + - director + - disc + - edition + - edition_contains + - episode_ordering + - episode_sorting + - episodes + - f1_season + - file_background + - file_poster + - genre + - keep_episodes + - label + - mapping_id + - metadata_language + - mood + - original_artist + - original_title + - originally_available + - producer + - record_label + - round_prefix + - run_definition + - season_display + - seasons + - shorten_gp + - similar_artist + - sort_title + - studio + - style + - subtitle_language + - subtitle_mode + - summary + - tagline + - title + - tmdb_show + - track + - tracks + - update_episodes + - update_seasons + - url_background + - url_poster + - use_original_title + - user_rating + - writer + - year +--- + # Metadata Files You can have the script edit the metadata of Items by adding them to the `metadata` mapping of a Metadata File. diff --git a/docs/files/overlays.md b/docs/files/overlays.md index 68b96c8a..0267cb1b 100644 --- a/docs/files/overlays.md +++ b/docs/files/overlays.md @@ -1,3 +1,84 @@ +--- +hide: + - tags +tags: + - addon_offset + - addon_position + - anidb_average_rating + - anidb_rating + - anidb_score_rating + - audience_rating + - back_align + - back_color + - back_height + - back_line_color + - back_line_width + - back_padding + - back_radius + - back_width + - bitrate + - bitrateH + - bitrateL + - content_rating + - critic_rating + - edition + - episode_count + - episode_number + - external_templates + - file + - font + - font_color + - font_size + - font_style + - git + - group + - horizontal_align + - horizontal_offset + - imdb_rating + - libraries + - mal_rating + - mdb_average_rating + - mdb_imdb_rating + - mdb_letterboxd_rating + - mdb_metacritic_rating + - mdb_metacriticuser_rating + - mdb_myanimelist_rating + - mdb_rating + - mdb_tmdb_rating + - mdb_tomatoes_rating + - mdb_tomatoesaudience_rating + - mdb_trakt_rating + - name + - omdb_rating + - original_title + - originally_available + - overlays + - queue + - queues + - repo + - runtime + - runtimeH + - runtimeM + - season_number + - season_title + - show_title + - stroke_color + - stroke_width + - templates + - title + - tmdb_rating + - total_runtime + - total_runtimeH + - total_runtimeM + - trakt_user_rating + - url + - user_rating + - versions + - vertical_align + - vertical_offset + - weight +--- + # Overlay Files Overlay Files holds information on how Kometa should create Overlays. There are a large number of builders available to build Overlays, diff --git a/docs/files/playlists.md b/docs/files/playlists.md index f63dec26..5dc39bf8 100644 --- a/docs/files/playlists.md +++ b/docs/files/playlists.md @@ -1,3 +1,13 @@ +--- +hide: + - tags +tags: + - libraries + - sync_to_users + - exclude_users + - delete_playlist +--- + # Playlist Files Playlist files are used to create and maintain playlists on the Plex Server. diff --git a/docs/files/settings.md b/docs/files/settings.md index 4b7b1409..78a265ad 100644 --- a/docs/files/settings.md +++ b/docs/files/settings.md @@ -1,7 +1,46 @@ --- search: boost: 3 +hide: + - tags +tags: + - addons + - name + - limit + - template + - schedule + - run_again + - sync_mode + - builder_level + - minimum_items + - delete_below_minimum + - delete_not_scheduled + - tmdb_region + - validate_builders + - cache_builders + - blank_collection + - build_collection + - server_preroll + - missing_only_released + - only_filter_missing + - show_filtered + - show_missing + - save_report + - ignore_ids + - ignore_imdb_ids + - name_mapping + - test + - tmdb_birthday + - changes_webhooks + - sync_to_trakt_list + - sync_missing_to_trakt_list + - run_definition + - default_percent + - ignore_blank_results + - only_run_on_create + - delete_collections_named --- + # Definition Settings All the following attributes serve various functions as how the definition functions inside of Kometa. diff --git a/docs/files/updates.md b/docs/files/updates.md index bc0a2784..acac697e 100644 --- a/docs/files/updates.md +++ b/docs/files/updates.md @@ -1,3 +1,35 @@ +--- +hide: + - tags +tags: + - tmdb_person + - tmdb_person_offset + - sort_title + - content_rating + - label + - label.remove + - label.sync + - collection_mode + - collection_order + - collection_filtering + - visible_library + - visible_home + - visible_shared + - url_theme + - file_theme + - url_poster + - tmdb_poster + - tmdb_list_poster + - tmdb_profile + - tvdb_poster + - tvdb_list_poster + - file_poster + - url_background + - tmdb_background + - tvdb_background + - file_background +--- + # Collection/Playlist Metadata Updates All the following attributes update various details of the definition's Metadata. diff --git a/docs/kometa/guides/assets.md b/docs/kometa/guides/assets.md index 7edff8bc..81981e86 100644 --- a/docs/kometa/guides/assets.md +++ b/docs/kometa/guides/assets.md @@ -68,11 +68,11 @@ Movies: assets_for_all: true ``` -* If you want to silence the `Asset Warning: No poster or background found in an assets folder for 'TITLE'` you can use the [`show_missing_assets` Setting Attribute](../../config/settings.md): - ```yaml - settings: - show_missing_assets: false - ``` +If you want to silence the `Asset Warning: No poster or background found in an assets folder for 'TITLE'` you can use the [`show_missing_assets` Setting Attribute](../../config/settings.md): +```yaml +settings: + show_missing_assets: false +``` ## Asset interaction with overlays @@ -88,127 +88,143 @@ Assets can be stored anywhere on the host system that Kometa has visibility of ( The below table assumes that your assets are stored within the directory mapped to `config` in your Kometa environment. -| Image Type | Asset Folders Image Paths
`asset_folders: true` | Flat Assets Image Paths
`asset_folders: false` | -|:---------------------------------|:---------------------------------------------------------|:--------------------------------------------------------------| -| Collection/Movie/Show poster | `/ASSET_NAME/poster.ext` | `/ASSET_NAME.ext` | -| Collection/Movie/Show background | `/ASSET_NAME/background.ext` | `/ASSET_NAME_background.ext` | -| Season poster | `/ASSET_NAME/Season##.ext` | `/ASSET_NAME_Season##.ext` | -| Season background | `/ASSET_NAME/Season##_background.ext` | `/ASSET_NAME_Season##_background.ext` | -| Episode poster | `/ASSET_NAME/S##E##.ext` | `/ASSET_NAME_S##E##.ext` | -| Episode background | `/ASSET_NAME/S##E##_background.ext` | `/ASSET_NAME_S##E##_background.ext` | - -* For **Collections** replace `ASSET_NAME` with the mapping name used with the collection unless `name_mapping` is specified, which you would then use what's specified in `name_mapping`. - - For example: - ```yaml - collections: - A24 Movies: - trakt_list: https://trakt.tv/users/moonilism/lists/a24 - ``` - `ASSET_NAME` is "A24 Movies" - - ```yaml - /// < : ** : > \\\: - name_mapping: crazy-punctuation-collection - trakt_list: https://trakt.tv/users/moonilism/lists/a24 - ``` - `ASSET_NAME` is "crazy-punctuation-collection" - -* For **Movies** replace `ASSET_NAME` with the exact name of the folder the video file is stored in. - - That means the folder name exactly as it appears in the file system. - ``` - /path/to/media/movies/THE NAME OF THE FOLDER HOWEVER LONG IT IS AND WHATEVER IT CONTAINS/MOVIE_NAME.mp4 - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME - ``` - - For example, given this movie: - ``` - /path/to/media/movies/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/Star Wars (1977) [1080p].mp4 - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME - ``` - The asset names that Kometa will look for are: - - ASSET_FOLDERS=True: - ``` - config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/poster.ext - config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/background.ext - ``` - - ASSET_FOLDERS=False: - ``` - config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}.ext - config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}_background.ext - ``` - -* For **Shows**, **Seasons**, and **Episodes** replace `ASSET_NAME` with the exact name of the folder for the show as a whole. - - That means the folder name exactly as it appears in the file system. - ``` - /path/to/media/tv/THE NAME OF THE FOLDER HOWEVER LONG IT IS AND WHATEVER IT CONTAINS/Season 01/EPISODE_FILE.mkv - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME - ``` - - For example, given this show: - ``` - /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME - ``` - The asset names that Kometa will look for are: - - ASSET_FOLDERS=True: - ``` - config/assets/The Expanse (2015) {tvdb-280619}/poster.ext - config/assets/The Expanse (2015) {tvdb-280619}/background.ext - ``` - - ASSET_FOLDERS=False: - ``` - config/assets/The Expanse (2015) {tvdb-280619}.ext - config/assets/The Expanse (2015) {tvdb-280619}_background.ext - ``` - -* For **Seasons** replace `##` with the zero padded season number (00 for specials) - - For example, given this show: - ``` - /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv - ``` - - The asset names that Kometa will look for are: - - ASSET_FOLDERS=True: - ``` - config/assets/The Expanse (2015) {tvdb-280619}/Season01.ext - config/assets/The Expanse (2015) {tvdb-280619}/Season01_background.ext - ``` - - ASSET_FOLDERS=False: - ``` - config/assets/The Expanse (2015) {tvdb-280619}_Season01.ext - config/assets/The Expanse (2015) {tvdb-280619}_Season01_background.ext - ``` - -* For **Episodes** replacing the first `##` with the zero padded season number (00 for specials), the second `##` with the zero padded episode number - - For example, given this show: - ``` - /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv - ``` - - The asset names that Kometa will look for are: - - ASSET_FOLDERS=True: - ``` - config/assets/The Expanse (2015) {tvdb-280619}/S01E01.ext - config/assets/The Expanse (2015) {tvdb-280619}/S01E01_background.ext - ``` - - ASSET_FOLDERS=False: - ``` - config/assets/The Expanse (2015) {tvdb-280619}_S01E01.ext - config/assets/The Expanse (2015) {tvdb-280619}_S01E01_background.ext - ``` +=== "ASSET_FOLDERS=True" + | Image Type | Asset Folders Image Paths
`asset_folders: true` | + |:---------------------------------|:---------------------------------------------------------| + | Collection/Movie/Show poster | `/ASSET_NAME/poster.ext` | + | Collection/Movie/Show background | `/ASSET_NAME/background.ext` | + | Season poster | `/ASSET_NAME/Season##.ext` | + | Season background | `/ASSET_NAME/Season##_background.ext` | + | Episode poster | `/ASSET_NAME/S##E##.ext` | + | Episode background | `/ASSET_NAME/S##E##_background.ext` | +=== "ASSET_FOLDERS=False" + | Image Type | Flat Assets Image Paths
`asset_folders: false` | + |:---------------------------------|:---------------------------------------------------------| + | Collection/Movie/Show poster | `/ASSET_NAME.ext` | + | Collection/Movie/Show background | `/ASSET_NAME_background.ext` | + | Season poster | `/ASSET_NAME_Season##.ext` | + | Season background | `/ASSET_NAME_Season##_background.ext` | + | Episode poster | `/ASSET_NAME_S##E##.ext` | + | Episode background | `/ASSET_NAME_S##E##_background.ext` | + +## Determining the "Asset Name" + +=== "Collections" + `ASSET_NAME` is the mapping name used with the collection unless `name_mapping` is specified, in which case you would use what's specified in `name_mapping`. + + For example: + ```yaml + collections: + A24 Movies: + trakt_list: https://trakt.tv/users/moonilism/lists/a24 + ``` + `ASSET_NAME` is "A24 Movies" + + ```yaml + collections: + /// < : ** : > \\\: + name_mapping: crazy-punctuation-collection + trakt_list: https://trakt.tv/users/moonilism/lists/a24 + ``` + `ASSET_NAME` is "crazy-punctuation-collection" + +=== "Movies" + `ASSET_NAME` is the exact name of the folder the video file is stored in. + + That means the folder name exactly as it appears in the file system. + ``` + /path/to/media/movies/NAME OF THE FOLDER HOWEVER LONG AND WHATEVER IT CONTAINS/MOVIE_NAME.mp4 + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME + ``` + + For example, given this movie: + ``` + /path/to/media/movies/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/Star Wars (1977) [1080p].mp4 + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME + ``` + The asset names that Kometa will look for are: + + === "ASSET_FOLDERS=True" + ``` + config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/poster.ext + config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}/background.ext + ``` + === "ASSET_FOLDERS=False" + ``` + config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}.ext + config/assets/Star Wars (1977) {imdb-tt0076759} {tmdb-11}_background.ext + ``` + +=== "Shows, Seasons, and Episodes" + `ASSET_NAME` is the exact name of the folder for the show as a whole. + + That means the folder name exactly as it appears in the file system. + ``` + /path/to/media/tv/NAME OF THE FOLDER HOWEVER LONG AND WHATEVER IT CONTAINS/Season 01/EPISODE_FILE.mkv + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME + ``` + + For example, given this show: + ``` + /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- THIS IS ASSET_NAME + ``` + The asset names that Kometa will look for are: + + === "ASSET_FOLDERS=True" + ``` + config/assets/The Expanse (2015) {tvdb-280619}/poster.ext + config/assets/The Expanse (2015) {tvdb-280619}/background.ext + ``` + === "ASSET_FOLDERS=False" + ``` + config/assets/The Expanse (2015) {tvdb-280619}.ext + config/assets/The Expanse (2015) {tvdb-280619}_background.ext + ``` + +## Season and Episode numbers + +=== "Seasons" + Replace `##` with the zero padded season number (00 for specials) + + For example, given this show: + ``` + /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv + ``` + + The asset names that Kometa will look for are: + + === "ASSET_FOLDERS=True" + ``` + config/assets/The Expanse (2015) {tvdb-280619}/Season01.ext + config/assets/The Expanse (2015) {tvdb-280619}/Season01_background.ext + ``` + === "ASSET_FOLDERS=False" + ``` + config/assets/The Expanse (2015) {tvdb-280619}_Season01.ext + config/assets/The Expanse (2015) {tvdb-280619}_Season01_background.ext + ``` + +=== "Episodes" + Replace the first `##` with the zero padded season number (00 for specials), the second `##` with the zero padded episode number + + For example, given this show: + ``` + /path/to/media/tv/The Expanse (2015) {tvdb-280619}/Season 01/The Expanse (2015) - S01E01 - Dulcinea.mkv + ``` + + The asset names that Kometa will look for are: + + === "ASSET_FOLDERS=True" + ``` + config/assets/The Expanse (2015) {tvdb-280619}/S01E01.ext + config/assets/The Expanse (2015) {tvdb-280619}/S01E01_background.ext + ``` + === "ASSET_FOLDERS=False" + ``` + config/assets/The Expanse (2015) {tvdb-280619}_S01E01.ext + config/assets/The Expanse (2015) {tvdb-280619}_S01E01_background.ext + ``` * Replace `.ext` with the image extension @@ -218,99 +234,98 @@ Assets can be stored anywhere on the host system that Kometa has visibility of ( Here's an example config folder structure with an assets directory with `asset_folders` set to true and false. -### Asset Folders `asset_folders: true` - -``` -config -├── config.yml -├── Movies.yml -├── TV Shows.yml -└── assets - ├── The Lord of the Rings - │ ├── poster.png - │ └── background.png - ├── The Lord of the Rings The Fellowship of the Ring (2001) - │ ├── poster.png - │ └── background.png - ├── The Lord of the Rings The Two Towers (2002) - │ ├── poster.png - │ └── background.png - ├── The Lord of the Rings The Return of the King (2003) - │ ├── poster.png - │ └── background.png - ├── Star Wars (Animated) - │ ├── poster.png - │ └── background.png - ├── Star Wars The Clone Wars - │ ├── poster.png - │ ├── background.png - │ ├── Season00.png - │ ├── Season01.png - │ ├── Season02.png - │ ├── Season03.png - │ ├── Season04.png - │ ├── Season05.png - │ ├── Season06.png - │ ├── Season07.png - │ ├── S07E01.png - │ ├── S07E02.png - │ ├── S07E03.png - │ ├── S07E04.png - │ └── S07E05.png - └── Star Wars Rebels - ├── poster.png - ├── background.png - ├── Season01.png - ├── Season01_background.png - ├── Season02.png - ├── Season02_background.png - ├── Season03.png - ├── Season03_background.png - ├── Season04.png - └── Season04_background.png -``` - -### Flat Assets `asset_folders: false` - -``` -config -├── config.yml -├── Movies.yml -├── TV Shows.yml -└── assets - ├── The Lord of the Rings.png - ├── The Lord of the Rings_background.png - ├── The Lord of the Rings The Fellowship of the Ring (2001).png - ├── The Lord of the Rings The Fellowship of the Ring (2001)_background.png - ├── The Lord of the Rings The Two Towers (2002).png - ├── The Lord of the Rings The Two Towers (2002)_background.png - ├── The Lord of the Rings The Return of the King (2003).png - ├── The Lord of the Rings The Return of the King (2003)_background.png - ├── Star Wars (Animated).png - ├── Star Wars (Animated)_background.png - ├── Star Wars The Clone Wars.png - ├── Star Wars The Clone Wars_background.png - ├── Star Wars The Clone Wars_Season00.png - ├── Star Wars The Clone Wars_Season01.png - ├── Star Wars The Clone Wars_Season02.png - ├── Star Wars The Clone Wars_Season03.png - ├── Star Wars The Clone Wars_Season04.png - ├── Star Wars The Clone Wars_Season05.png - ├── Star Wars The Clone Wars_Season06.png - ├── Star Wars The Clone Wars_Season07.png - ├── Star Wars The Clone Wars_S07E01.png - ├── Star Wars The Clone Wars_S07E02.png - ├── Star Wars The Clone Wars_S07E03.png - ├── Star Wars The Clone Wars_S07E04.png - ├── Star Wars The Clone Wars_S07E05.png - ├── Star Wars Rebels.png - ├── Star Wars Rebels_background.png - ├── Star Wars Rebels_Season01.png - ├── Star Wars Rebels_Season01_background.png - ├── Star Wars Rebels_Season02.png - ├── Star Wars Rebels_Season02_background.png - ├── Star Wars Rebels_Season03.png - ├── Star Wars Rebels_Season03_background.png - ├── Star Wars Rebels_Season04.png - └── Star Wars Rebels_Season04_background.png -``` +### Asset Folders vs Flat Assets + +=== "ASSET_FOLDERS=True" + ``` + config + ├── config.yml + ├── Movies.yml + ├── TV Shows.yml + └── assets + ├── The Lord of the Rings + │ ├── poster.png + │ └── background.png + ├── The Lord of the Rings The Fellowship of the Ring (2001) + │ ├── poster.png + │ └── background.png + ├── The Lord of the Rings The Two Towers (2002) + │ ├── poster.png + │ └── background.png + ├── The Lord of the Rings The Return of the King (2003) + │ ├── poster.png + │ └── background.png + ├── Star Wars (Animated) + │ ├── poster.png + │ └── background.png + ├── Star Wars The Clone Wars + │ ├── poster.png + │ ├── background.png + │ ├── Season00.png + │ ├── Season01.png + │ ├── Season02.png + │ ├── Season03.png + │ ├── Season04.png + │ ├── Season05.png + │ ├── Season06.png + │ ├── Season07.png + │ ├── S07E01.png + │ ├── S07E02.png + │ ├── S07E03.png + │ ├── S07E04.png + │ └── S07E05.png + └── Star Wars Rebels + ├── poster.png + ├── background.png + ├── Season01.png + ├── Season01_background.png + ├── Season02.png + ├── Season02_background.png + ├── Season03.png + ├── Season03_background.png + ├── Season04.png + └── Season04_background.png + ``` +=== "ASSET_FOLDERS=False" + ``` + config + ├── config.yml + ├── Movies.yml + ├── TV Shows.yml + └── assets + ├── The Lord of the Rings.png + ├── The Lord of the Rings_background.png + ├── The Lord of the Rings The Fellowship of the Ring (2001).png + ├── The Lord of the Rings The Fellowship of the Ring (2001)_background.png + ├── The Lord of the Rings The Two Towers (2002).png + ├── The Lord of the Rings The Two Towers (2002)_background.png + ├── The Lord of the Rings The Return of the King (2003).png + ├── The Lord of the Rings The Return of the King (2003)_background.png + ├── Star Wars (Animated).png + ├── Star Wars (Animated)_background.png + ├── Star Wars The Clone Wars.png + ├── Star Wars The Clone Wars_background.png + ├── Star Wars The Clone Wars_Season00.png + ├── Star Wars The Clone Wars_Season01.png + ├── Star Wars The Clone Wars_Season02.png + ├── Star Wars The Clone Wars_Season03.png + ├── Star Wars The Clone Wars_Season04.png + ├── Star Wars The Clone Wars_Season05.png + ├── Star Wars The Clone Wars_Season06.png + ├── Star Wars The Clone Wars_Season07.png + ├── Star Wars The Clone Wars_S07E01.png + ├── Star Wars The Clone Wars_S07E02.png + ├── Star Wars The Clone Wars_S07E03.png + ├── Star Wars The Clone Wars_S07E04.png + ├── Star Wars The Clone Wars_S07E05.png + ├── Star Wars Rebels.png + ├── Star Wars Rebels_background.png + ├── Star Wars Rebels_Season01.png + ├── Star Wars Rebels_Season01_background.png + ├── Star Wars Rebels_Season02.png + ├── Star Wars Rebels_Season02_background.png + ├── Star Wars Rebels_Season03.png + ├── Star Wars Rebels_Season03_background.png + ├── Star Wars Rebels_Season04.png + └── Star Wars Rebels_Season04_background.png + ```