[48] split metadata and collection files with their own attributes
2
VERSION
|
@ -1 +1 @@
|
|||
1.19.1-develop47
|
||||
1.19.1-develop48
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
libraries: # This is called out once within the config.yml file
|
||||
Movies: # These are names of libraries in your Plex
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: imdb # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
|
@ -11,7 +11,7 @@ libraries: # This is called out once within the config.yml
|
|||
- pmm: ribbon # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: imdb # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
|
@ -20,12 +20,12 @@ libraries: # This is called out once within the config.yml
|
|||
- pmm: ribbon # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
Anime:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: anilist # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
Music:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Music.yml # This is a local file THAT YOU MIGHT CREATE
|
||||
playlist_files:
|
||||
- pmm: playlist # This is a file within PMM's defaults folder
|
||||
|
|
|
@ -29,14 +29,14 @@ The scheduling options are:
|
|||
|
||||
## Examples
|
||||
|
||||
Below is an example of a library which has been scheduled to run every Sunday. This will schedule everything within the library (in this case Metadata files and Operations) for the same day.
|
||||
Below is an example of a library which has been scheduled to run every Sunday. This will schedule everything within the library (in this case Collection Files and Operations) for the same day.
|
||||
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
schedule: weekly(sunday)
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
- pmm: imdb
|
||||
- pmm: studio
|
||||
|
@ -46,14 +46,14 @@ libraries:
|
|||
mass_critic_rating_update: tmdb
|
||||
```
|
||||
|
||||
Metadata Files, Playlist Files, and Overlay Files can all be individually scheduled, as seen below where different files are scheduled to run on each day of the week:
|
||||
Collection Files, Playlist Files, and Overlay Files can all be individually scheduled, as seen below where different files are scheduled to run on each day of the week:
|
||||
|
||||
**Note: Overlay Files cannot be individually Scheduled, all Overlay Files must be scheduled for the same period.**
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
schedule: weekly(monday)
|
||||
- pmm: imdb
|
||||
|
@ -64,7 +64,7 @@ libraries:
|
|||
schedule: weekly(thursday)
|
||||
- pmm: actor
|
||||
schedule: weekly(friday)
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- schedule: weekly(saturday)
|
||||
- pmm: audio_codec
|
||||
- pmm: resolution
|
||||
|
@ -104,7 +104,7 @@ Whilst it isn't possible to schedule individual Operations, you can create addit
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
Movies Operations (Monday): # Name doesn't matter
|
||||
library_name: Movies # Must match your library name in Plex
|
||||
|
|
105
docs/builders/dynamic.md
Normal file
|
@ -0,0 +1,105 @@
|
|||
# Dynamic Collections
|
||||
|
||||
Plex Meta Manager can dynamically create collections based on different criteria, such as
|
||||
* Collections based on the Collections from TMDb for every item in the library. ([Star Wars](https://www.themoviedb.org/collection/10-star-wars-collection), [Harry Potter](https://www.themoviedb.org/collection/1241), etc...)
|
||||
* Collections based on each of a Users Trakt Lists
|
||||
* Collections for the top `X` popular people on TMDb (Bruce Willis, Tom Hanks, etc...)
|
||||
* Collections for each decade represented in the library (Best of 1990s, Best of 2000s, etc...)
|
||||
* Collections for each of the moods/styles within a Music library (A Cappella, Pop Rock, etc...)
|
||||
|
||||
The main purpose of dynamic collections is to automate the creation of collections which would otherwise require considerable user input and repetition (such as creating a collection for every genre).
|
||||
|
||||
Each dynamic collection must have a mapping name (just like standard collections), which is also attached to the collection as a label to mark it as having been created by this dynamic collection.
|
||||
|
||||
This example will create a collection for every TMDb Collection associated with items in the library.
|
||||
|
||||
```yaml
|
||||
dynamic_collections:
|
||||
TMDb Collections: # This name is the mapping name
|
||||
type: tmdb_collection
|
||||
remove_suffix: "Collection"
|
||||
```
|
||||
|
||||
## Collection Naming
|
||||
|
||||
By default, the collections generated will be named for the thing being used to create them; things like genres, countries, actors or even Trakt List Names.
|
||||
|
||||
There are many attributes that can change the titles, including `title_format`, `remove_suffix`, `remove_prefix`, `key_name_override`, and `title_override` all detailed below.
|
||||
|
||||
## Dynamic Keys & Key Names
|
||||
|
||||
A `dynamic key` or `key` for short is used to refer to a specific value/result from the dynamic collection criteria that will be used to create the collection.
|
||||
|
||||
A `key_name` is the name that replaces `<<key_name>>` in `title_format` to create the collection titles for each key.
|
||||
|
||||
An example of some keys and their names that would be generated from a `tmdb_collection` dynamic collection are
|
||||
* `key`: "10"
|
||||
* `key_name`: Star Wars Collection
|
||||
* `key`: "1241"
|
||||
* `key_name`: Harry Potter Collection
|
||||
|
||||
### Example Key Usage
|
||||
|
||||
Keys can be used for a number of purposes, examples can be found throughout this page. A few examples are shown below:
|
||||
|
||||
* Excluding the "Horror" key from the `Genre` dynamic collection definition
|
||||
|
||||
```yaml
|
||||
dynamic_collections:
|
||||
Genres: # mapping name does not matter, just needs to be unique
|
||||
type: genre
|
||||
exclude:
|
||||
- Horror
|
||||
```
|
||||
|
||||
* Using the `key_name_override` attribute to change the formatting of "France" to "French" so that a collection can be named "French Cinema" instead of simply "France"
|
||||
* This particular example also uses the `title_format` attribute to manipulate the naming convention of the collections.
|
||||
|
||||
```yaml
|
||||
dynamic_collections:
|
||||
Countries: # mapping name does not matter, just needs to be unique
|
||||
type: country
|
||||
title_format: <<key_name>> Cinema
|
||||
key_name_override:
|
||||
France: French
|
||||
```
|
||||
|
||||
* Using the `addons` attribute to combine multiple `keys`, i.e. merging "MTV2", "MTV3" and "MTV (UK)" into one "MTV" collection.
|
||||
* When doing this, individual collections will not be created for the individual MTV collections, instead they will be merged within the "MTV" collection.
|
||||
|
||||
```yaml
|
||||
dynamic_collections:
|
||||
networks:
|
||||
type: network
|
||||
addons:
|
||||
MTV:
|
||||
- MTV2
|
||||
- MTV3
|
||||
- MTV (UK)
|
||||
```
|
||||
|
||||
## Attributes
|
||||
|
||||
| Attribute | Description | Required |
|
||||
|:--------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------|:-----------------:|
|
||||
| [`type`](#type--data) | Type of Dynamic Collection to be created. | ✅ |
|
||||
| [`data`](#type--data) | Data to determine how dynamic collections with a certain `type` are created. | Depends on `type` |
|
||||
| [`exclude`](#exclude) | Exclude this list of keys from being created into collections. | ❌ |
|
||||
| [`addons`](#addons) | Defines how multiple keys can be combined under a parent key. | ❌ |
|
||||
| [`template`](#template) | Name of the template to use for these dynamic collections. | ❌ |
|
||||
| [`template_variables`](#template-variables) | Defines how template variables can be defined by key. | ❌ |
|
||||
| [`other_template`](#other-template) | Name of the template to use for the other collection. | ❌ |
|
||||
| [`remove_suffix`](#remove-prefixsuffix) | Removes the defined suffixes from the key before it's used in the collection title. | ❌ |
|
||||
| [`remove_prefix`](#remove-prefixsuffix) | Removes the defined prefixes from the key before it's used in the collection title. | ❌ |
|
||||
| [`title_format`](#title-format) | This is the format for the collection titles. | ❌ |
|
||||
| [`key_name_override`](#key-name-override) | Defines how key names can be overridden before they are formatted into collection titles. | ❌ |
|
||||
| [`title_override`](#title-override) | Defines how collection titles can be overridden ignoring title formatting. | ❌ |
|
||||
| [`custom_keys`](#custom-keys) | Defines if custom keys are allowed. | ❌ |
|
||||
| [`test`](#test) | Will add `test: true` to all collections for test runs. | ❌ |
|
||||
| [`sync`](#sync) | Will remove dynamic collections that are no longer in the creation list. | ❌ |
|
||||
| [`include`](#include) | Define a list of keys to be made into collections. | ❌ |
|
||||
| [`other_name`](#other-name) | Used in combination with `include`. When defined, all keys not in `include` or `addons` will be combined into this collection. | ❌ |
|
||||
|
||||
{%
|
||||
include-markdown "./dynamic_types.md"
|
||||
%}
|
2243
docs/builders/dynamic_types.md
Normal file
|
@ -4,7 +4,7 @@ Filters allow for you to filter every item added to the collection/overlay/playl
|
|||
|
||||
## Using Filters
|
||||
|
||||
Filters cannot do anything alone they require the use of at least one [Builder](../metadata/builders.md) to function.
|
||||
Filters cannot do anything alone they require the use of at least one [Builder](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.
|
||||
|
||||
|
@ -34,7 +34,7 @@ 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](smart.md#smart-label), [Plex Search](plex.md#plex-search) or another [Builder](../metadata/builders.md) if possible.
|
||||
Filters can be very slow, particularly on larger libraries. Try to build or narrow your items using a [Smart Label Collection](smart.md#smart-label), [Plex Search](plex.md#plex-search) or another [Builder](overview.md) if possible.
|
||||
|
||||
## String Filters
|
||||
|
||||
|
|
24
docs/builders/overview.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
# Builders
|
||||
|
||||
Builders use third-party services to source items to be added to the collection. Multiple builders can be used in the same collection from a variety of sources listed below.
|
||||
|
||||
| Name | Description | Requires Config |
|
||||
|:--------------------------------|:----------------------------------------------------------------------------------------------|:---------------:|
|
||||
| [Plex](plex.md) | Grabs items based on the metadata inside your Plex Server. | ✅ |
|
||||
| [Smart](smart.md) | Creates Smart Collections based on the metadata inside your Plex Server. (Collections Only) | ✅ |
|
||||
| [TMDb](tmdb.md) | Grabs items based on metadata and lists on [TheMovieDb.org](https://www.themoviedb.org/). | ✅ |
|
||||
| [TVDb](tvdb.md) | Grabs items based on metadata and lists on [TheTVDb.com](https://www.thetvdb.com/). | ❌ |
|
||||
| [IMDb](imdb.md) | Grabs items based on metadata and lists on [IMDb.com](https://www.imdb.com/). | ❌ |
|
||||
| [Trakt](trakt.md) | Grabs items based on metadata and lists on [Trakt.tv](https://trakt.tv/). | ✅ |
|
||||
| [Tautulli](tautulli.md) | Grabs items based on metadata and lists in your [Tautulli](https://tautulli.com/). | ✅ |
|
||||
| [Radarr](radarr.md) | Grabs items based on metadata and lists in your [Radarr](https://radarr.video/) . | ✅ |
|
||||
| [Sonarr](sonarr.md) | Grabs items based on metadata and lists in your [Sonarr](https://sonarr.tv/). | ✅ |
|
||||
| [MdbList](mdblist.md) | Grabs items based on metadata and lists on [MdbList.com](https://mdblist.com/). | ❌ |
|
||||
| [Letterboxd](letterboxd.md) | Grabs items based on metadata and lists on [Letterboxd.com](https://letterboxd.com/). | ❌ |
|
||||
| [ICheckMovies](icheckmovies.md) | Grabs items based on metadata and lists on [ICheckMovies.com](https://www.icheckmovies.com/). | ❌ |
|
||||
| [FlixPatrol](flixpatrol.md) | Grabs items based on metadata and lists on [FlixPatrol.com](https://flixpatrol.com/). | ❌ |
|
||||
| [Reciperr](reciperr.md) | Grabs items based on metadata and lists on [reciperr.com](https://reciperr.com/). | ❌ |
|
||||
| [StevenLu](stevenlu.md) | Grabs items based on metadata and lists on [StevenLu.com](https://movies.stevenlu.com/). | ❌ |
|
||||
| [AniDB](anidb.md) | Grabs items based on metadata and lists on [AniDB.net](https://anidb.net/). | ❌ |
|
||||
| [AniList](anilist.md) | Grabs items based on metadata and lists on [AniList.co](https://anilist.co/). | ❌ |
|
||||
| [MyAnimeList](myanimelist.md) | Grabs items based on metadata and lists on [MyAnimeList.net](https://myanimelist.net/). | ✅ |
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
The below builders are available based on metadata inside your Plex Server.
|
||||
|
||||
| Name | Description | Requires Config |
|
||||
|:--------------------------------------------|:----------------------------------------------------------------------------------------------|:---------------:|
|
||||
| [Plex](../builders/plex.md) | Grabs items based on the metadata inside your Plex Server. | ✅ |
|
||||
| [Smart](../builders/smart.md) | Creates Smart Collections based on the metadata inside your Plex Server. (Collections Only) | ✅ |
|
||||
| Name | Description | Requires Config |
|
||||
|:-------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------:|
|
||||
| [Dumb Builders](../plex.md) | Grabs items based on the metadata inside your Plex Server. Results are static and require PMM to re-run to update. | ✅ |
|
||||
| [Smart Builders](../smart.md) | Creates Smart Collections based on the metadata inside your Plex Server. Results are dynamic and will update as your library updates without the need to re-run PMM (Collections Only) | ✅ |
|
||||
|
|
|
@ -4,19 +4,19 @@ The below builders are available based on third-party services, multiple builder
|
|||
|
||||
| Name | Description | Requires Config |
|
||||
|:---------------------------------------------|:----------------------------------------------------------------------------------------------|:---------------:|
|
||||
| [TMDb](../builders/tmdb.md) | Grabs items based on metadata and lists on [TheMovieDb.org](https://www.themoviedb.org/). | ✅ |
|
||||
| [TVDb](../builders/tvdb.md) | Grabs items based on metadata and lists on [TheTVDb.com](https://www.thetvdb.com/). | ❌ |
|
||||
| [IMDb](../builders/imdb.md) | Grabs items based on metadata and lists on [IMDb.com](https://www.imdb.com/). | ❌ |
|
||||
| [Trakt](../builders/trakt.md) | Grabs items based on metadata and lists on [Trakt.tv](https://trakt.tv/). | ✅ |
|
||||
| [Tautulli](../builders/tautulli.md) | Grabs items based on metadata and lists in your [Tautulli](https://tautulli.com/). | ✅ |
|
||||
| [Radarr](../builders/radarr.md) | Grabs items based on metadata and lists in your [Radarr](https://radarr.video/) . | ✅ |
|
||||
| [Sonarr](../builders/sonarr.md) | Grabs items based on metadata and lists in your [Sonarr](https://sonarr.tv/). | ✅ |
|
||||
| [MdbList](../builders/mdblist.md) | Grabs items based on metadata and lists on [MdbList.com](https://mdblist.com/). | ❌ |
|
||||
| [Letterboxd](../builders/letterboxd.md) | Grabs items based on metadata and lists on [Letterboxd.com](https://letterboxd.com/). | ❌ |
|
||||
| [ICheckMovies](../builders/icheckmovies.md) | Grabs items based on metadata and lists on [ICheckMovies.com](https://www.icheckmovies.com/). | ❌ |
|
||||
| [FlixPatrol](../builders/flixpatrol.md) | Grabs items based on metadata and lists on [FlixPatrol.com](https://flixpatrol.com/). | ❌ |
|
||||
| [Reciperr](../builders/reciperr.md) | Grabs items based on metadata and lists on [reciperr.com](https://reciperr.com/). | ❌ |
|
||||
| [StevenLu](../builders/stevenlu.md) | Grabs items based on metadata and lists on [StevenLu.com](https://movies.stevenlu.com/). | ❌ |
|
||||
| [AniDB](../builders/anidb.md) | Grabs items based on metadata and lists on [AniDB.net](https://anidb.net/). | ❌ |
|
||||
| [AniList](../builders/anilist.md) | Grabs items based on metadata and lists on [AniList.co](https://anilist.co/). | ❌ |
|
||||
| [MyAnimeList](../builders/myanimelist.md) | Grabs items based on metadata and lists on [MyAnimeList.net](https://myanimelist.net/). | ✅ |
|
||||
| [TMDb](../tmdb.md) | Grabs items based on metadata and lists on [TheMovieDb.org](https://www.themoviedb.org/). | ✅ |
|
||||
| [TVDb](../tvdb.md) | Grabs items based on metadata and lists on [TheTVDb.com](https://www.thetvdb.com/). | ❌ |
|
||||
| [IMDb](../imdb.md) | Grabs items based on metadata and lists on [IMDb.com](https://www.imdb.com/). | ❌ |
|
||||
| [Trakt](../trakt.md) | Grabs items based on metadata and lists on [Trakt.tv](https://trakt.tv/). | ✅ |
|
||||
| [Tautulli](../tautulli.md) | Grabs items based on metadata and lists in your [Tautulli](https://tautulli.com/). | ✅ |
|
||||
| [Radarr](../radarr.md) | Grabs items based on metadata and lists in your [Radarr](https://radarr.video/) . | ✅ |
|
||||
| [Sonarr](../sonarr.md) | Grabs items based on metadata and lists in your [Sonarr](https://sonarr.tv/). | ✅ |
|
||||
| [MdbList](../mdblist.md) | Grabs items based on metadata and lists on [MdbList.com](https://mdblist.com/). | ❌ |
|
||||
| [Letterboxd](../letterboxd.md) | Grabs items based on metadata and lists on [Letterboxd.com](https://letterboxd.com/). | ❌ |
|
||||
| [ICheckMovies](../icheckmovies.md) | Grabs items based on metadata and lists on [ICheckMovies.com](https://www.icheckmovies.com/). | ❌ |
|
||||
| [FlixPatrol](../flixpatrol.md) | Grabs items based on metadata and lists on [FlixPatrol.com](https://flixpatrol.com/). | ❌ |
|
||||
| [Reciperr](../reciperr.md) | Grabs items based on metadata and lists on [reciperr.com](https://reciperr.com/). | ❌ |
|
||||
| [StevenLu](../stevenlu.md) | Grabs items based on metadata and lists on [StevenLu.com](https://movies.stevenlu.com/). | ❌ |
|
||||
| [AniDB](../anidb.md) | Grabs items based on metadata and lists on [AniDB.net](https://anidb.net/). | ❌ |
|
||||
| [AniList](../anilist.md) | Grabs items based on metadata and lists on [AniList.co](https://anilist.co/). | ❌ |
|
||||
| [MyAnimeList](../myanimelist.md) | Grabs items based on metadata and lists on [MyAnimeList.net](https://myanimelist.net/). | ✅ |
|
|
@ -1,9 +1,11 @@
|
|||
# Plex Builders
|
||||
# Dumb Builders
|
||||
|
||||
This builder finds its items by using the features of Plex.
|
||||
|
||||
No configuration is required for these builders.
|
||||
|
||||
The results of these builders are static and require PMM to re-run in order to update.
|
||||
|
||||
| Attribute | Description | Works with Movies | Works with Shows | Works with Playlists and Custom Sort |
|
||||
|:----------------------------------------------|:----------------------------------------------------------------------------|:-----------------:|:----------------:|:------------------------------------:|
|
||||
| [`plex_all`](#plex-all) | Gets every movie/show in your library. Useful with [Filters](filters.md) | ✅ | ✅ | ❌ |
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
Smart Builders allow Plex Meta Manager to create Smart Collections in two different ways.
|
||||
|
||||
The results of these builders are dynamic and do not require PMM to re-run in order to update, instead they will update automatically as the data within your Plex Library updates (i.e. if new media is added)
|
||||
|
||||
???+ note
|
||||
|
||||
Smart Builders do not currently work with Playlists
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Templates
|
||||
|
||||
Collection, Playlist, Metadata, and Overlay Definitions often share a lot of common or generalizable configuration details. Templates allow you to define these details so they can be used across multiple definitions.
|
||||
Collection, Playlist, Metadata, and Overlay Files often share a lot of common or generalizable configuration details. Templates allow you to define these details so they can be used across multiple definitions.
|
||||
|
||||
For example, an actor collection might look like this:
|
||||
|
||||
|
@ -90,7 +90,7 @@ The names of template variables that you define are arbitrary. In the example ab
|
|||
|
||||
To use a template with a collection definition you use the `template` attribute. The only required attribute under `template` is `name` which must correspond exactly to the template mapping name. Any other attributes under `template` are considered template variables whose names correspond exactly with the template variable name surrounded by `<<` and `>>` in the templates. These template variables will replace any part of any value that contains the template variable name surrounded by `<<` and `>>` in the template with the specified template variable's value.
|
||||
|
||||
Here's the full example Actor template and two different ways to use it, as it would appear in a metadata file.
|
||||
Here's the full example Actor template and two different ways to use it, as it would appear in a collection file.
|
||||
|
||||
```yaml
|
||||
templates:
|
||||
|
|
|
@ -2,30 +2,30 @@
|
|||
|
||||
libraries: # This is called out once within the config.yml file
|
||||
Movies: # These are names of libraries in your Plex
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: imdb # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false # Set this to true to remove all overlays
|
||||
- pmm: ribbon # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: imdb # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false # Set this to true to remove all overlays
|
||||
- pmm: ribbon # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
Anime:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic # This is a file within PMM's defaults folder
|
||||
- pmm: anilist # This is a file within PMM's defaults folder
|
||||
# see the wiki for how to use local files, folders, URLs, or files from git
|
||||
Music:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Music.yml # This is a local file THAT YOU MIGHT CREATE
|
||||
playlist_files:
|
||||
- pmm: playlist # This is a file within PMM's defaults folder
|
||||
|
|
183
docs/config/data/collections.md
Normal file
|
@ -0,0 +1,183 @@
|
|||
# Collection Files
|
||||
|
||||
Collection Files holds information on how Plex Meta Manager should create collections. There are a large number of builders available to build collections,
|
||||
|
||||
## Overview
|
||||
|
||||
This is a basic Collections File which contains the structure to build a collection called "Top 50 Grossing Films of All Time (Worldwide)"
|
||||
|
||||
The collection order is set to be the same as is received from the source list, and items added/removed from the source list will be added/removed from the collection in the Plex library.
|
||||
|
||||
???+ example "Example "MyCollections.yml""
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
collections: #(1)!
|
||||
Top 50 Grossing Films of All Time (Worldwide):
|
||||
tmdb_list: 10 #(2)!
|
||||
collection_order: custom #(3)!
|
||||
sync_mode: sync #(4)!
|
||||
```
|
||||
|
||||
1. This must appear once and **only once** in any Metadata file
|
||||
2. This creates a collection based on tmdb list ID 10, https://www.themoviedb.org/list/10 would also be accepted
|
||||
3. This will sort the items in the Plex collection to be the same as the order in the list
|
||||
4. Syncs the collection to the list, so that if an item is added/removed from the list, the same is done to the collection. Set this to `append` if you only want it to add things and not remove them.
|
||||
|
||||
For the purpose of this example, we are going to save the File as `MyCollections.yml` within the location mapped as `config` in our setup.
|
||||
|
||||
I then call "MyCollections.yml" in my [Configuration File](../configuration.md) within the `collection_files` section
|
||||
|
||||
???+ example "config.yml Example Collection File Addition"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies: #(1)!
|
||||
collection_files:
|
||||
- file: config/MyCollections.yml #(2)!
|
||||
```
|
||||
|
||||
1. This must match the name of a library in your Plex server
|
||||
2. `config` refers to the location that you mapped to `config` when following the PMM Installation Guides.
|
||||
|
||||
Whenever I execute Plex Meta Manager and the Movies library is run, MyCollections.yml will run and my "Top 50 Grossing Films of All Time (Worldwide)" will be created/updated.
|
||||
|
||||
## File Attributes
|
||||
|
||||
Collection Files can utilize the following top-level attributes
|
||||
|
||||
| Attribute | Description |
|
||||
|:--------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------|
|
||||
| [`templates`](../../builders/templates.md) | contains definitions of templates that can be leveraged by multiple collections |
|
||||
| [`external_templates`](../../builders/templates.md#external-templates) | contains [path types](../paths.md) that point to external templates that can be leveraged by multiple collections |
|
||||
| [`collections`](#collection-attributes) | contains definitions of collections you wish to add to one or more libraries |
|
||||
| [`dynamic_collections`](#dynamic-collection-attributes) | contains definitions of [dynamic collections](../../builders/dynamic.md) you wish to create |
|
||||
|
||||
* One of `metadata`, `collections` or `dynamic_collections` must be present for the File to run, else you will receive an error when trying to run the file against your library.
|
||||
|
||||
* Example Files can be found in the [Plex Meta Manager Configs Repository](https://github.com/meisnate12/Plex-Meta-Manager-Configs/tree/master/PMM)
|
||||
|
||||
## Collection Operations & Attributes
|
||||
|
||||
Whilst [Library Operations](../operations.md) are used to control library-wide operations, Collection Files can be used as a method to perform more limited operations, such as:
|
||||
|
||||
* Syncing collections with the source list if one is used (such as Trakt Lists, TMDB Lists, etc.)
|
||||
|
||||
* Sending missing media to Sonarr/Radarr
|
||||
|
||||
* Adding labels to items in collections
|
||||
|
||||
* Showing and Hiding collections at set intervals (i.e. show Christmas collections in December only)
|
||||
|
||||
These operations can be performed without the need to physically build a collection (using the `build_collection: false` attribute)
|
||||
|
||||
Examples of these can be seen here
|
||||
|
||||
???+ example "Examples of Collection Operations"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
=== "Example 1 - Sync Collection to List"
|
||||
|
||||
```yaml
|
||||
collections:
|
||||
Christmas Extravaganza:
|
||||
trakt_list: https://trakt.tv/users/plexmetamanager/lists/christmas-extravaganza-non-tv-movie #(1)!
|
||||
sync_mode: append #(2!)
|
||||
collection_order: custom #(3)!
|
||||
```
|
||||
|
||||
1. This is a Trakt List builder, telling PMM to build a collection based on the items in this list
|
||||
1. If items are removed from the source list, having sync mode set to `append` means they will not be removed from the collection in Plex. Set this to `sync` if you want the items removed in the collection too
|
||||
3. Sort the collection in the order that it is received from the Trakt list
|
||||
|
||||
=== "Example 2 - Send to Arr"
|
||||
|
||||
```yaml
|
||||
collections:
|
||||
IMDb Top 250:
|
||||
imdb_chart: top_movies
|
||||
collection_order: custom #(1)!
|
||||
radarr_add_missing: true #(2)!
|
||||
```
|
||||
|
||||
1. Sorts the collection in the same order as is received by the source list
|
||||
2. Sends items that are in the source list but are not in your Plex library to Radarr. Replace with `sonarr_add_missing` for any show-based builder.
|
||||
|
||||
=== "Example 3 - Add labels"
|
||||
|
||||
```yaml
|
||||
collections:
|
||||
Radarr Tags:
|
||||
build_collection: false #(1)!
|
||||
radarr_taglist: mytag #(2)!
|
||||
item_label: myplextag #(3)!
|
||||
```
|
||||
|
||||
1. Tells PMM to not physically build a collection, but it will still perform the actions of the collection
|
||||
2. Find all items in Radarr that have the tag `mytag`
|
||||
3. For each of the items with `mytag` in Radarr, apply the `myplextag` to the items in the Plex library
|
||||
|
||||
=== "Example 4 - Schedule Collection"
|
||||
|
||||
```yaml
|
||||
collections:
|
||||
Christmas Extravaganza:
|
||||
trakt_list: https://trakt.tv/users/plexmetamanager/lists/christmas-extravaganza-non-tv-movie #(1)!
|
||||
schedule: range(12/01-12/31) #(2)!
|
||||
delete_not_scheduled: true #(3)!
|
||||
```
|
||||
|
||||
1. Tells PMM to not physically build a collection, but it will still perform the actions of the collection
|
||||
2. Only run this collection from December 1st through December 31st
|
||||
3. If today is not part of the above scheduled range, delete the Christmas Extravaganza collection if it exists in the Plex library
|
||||
|
||||
There are multiple types of attributes that can be utilized within a collection:
|
||||
|
||||
* [Builders](../../builders/overview.md)
|
||||
* [Settings/Updates](../../metadata/update.md)
|
||||
* [Filters](../../builders/filters.md)
|
||||
|
||||
## Example File
|
||||
|
||||
Below is a common Collection File which will create two collections in a Plex library.
|
||||
|
||||
It will sync the collections to the source lists, order them randomly, and apply a summary to the collection.
|
||||
|
||||
```yaml
|
||||
collections:
|
||||
Trending:
|
||||
trakt_trending: 10
|
||||
tmdb_trending_daily: 10
|
||||
tmdb_trending_weekly: 10
|
||||
sort_title: +1_Trending
|
||||
sync_mode: sync
|
||||
smart_label: random
|
||||
summary: Movies Trending across the internet
|
||||
Popular:
|
||||
tmdb_popular: 40
|
||||
imdb_list:
|
||||
url: https://www.imdb.com/search/title/?title_type=feature,tv_movie,documentary,short
|
||||
limit: 40
|
||||
sort_title: +2_Popular
|
||||
sync_mode: sync
|
||||
smart_label: random
|
||||
summary: Popular Movies across the internet
|
||||
```
|
||||
|
||||
## Dynamic Collections
|
||||
|
||||
In addition to manually defining each Collection that you want in your library, Plex Meta Manager can also dynamically create collections based on a variety of different criteria, such as
|
||||
|
||||
* Collections for the top `X` popular people on TMDb (Bruce Willis, Tom Hanks etc.)
|
||||
|
||||
* Collections for each decade represented in the library (Best of 1990s, Best of 2000s etc.)
|
||||
|
||||
* Collections for each of the moods/styles within a Music library (A Cappella, Pop Rock etc.)
|
||||
|
||||
* Collections for each of a Trakt Users Lists.
|
||||
|
||||
A full list of the available options is available on the [Dynamic Collections](../../builders/dynamic.md) page
|
BIN
docs/config/data/example_4k.png
Normal file
After Width: | Height: | Size: 446 KiB |
BIN
docs/config/data/example_4khdr.png
Normal file
After Width: | Height: | Size: 446 KiB |
BIN
docs/config/data/example_addonoffset.png
Normal file
After Width: | Height: | Size: 458 KiB |
BIN
docs/config/data/example_backdrop.png
Normal file
After Width: | Height: | Size: 371 KiB |
BIN
docs/config/data/example_blur.png
Normal file
After Width: | Height: | Size: 118 KiB |
BIN
docs/config/data/example_episodetext.png
Normal file
After Width: | Height: | Size: 1,012 KiB |
BIN
docs/config/data/example_positional.png
Normal file
After Width: | Height: | Size: 377 KiB |
BIN
docs/config/data/example_specialtext.png
Normal file
After Width: | Height: | Size: 456 KiB |
BIN
docs/config/data/example_specialtextmodifier.png
Normal file
After Width: | Height: | Size: 456 KiB |
BIN
docs/config/data/example_text.png
Normal file
After Width: | Height: | Size: 458 KiB |
259
docs/config/data/metadata/movie.md
Normal file
|
@ -0,0 +1,259 @@
|
|||
# Movie Library Metadata
|
||||
|
||||
You can have the script edit the metadata of Movies by adding them to the `metadata` mapping of a Metadata File.
|
||||
|
||||
An example of multiple metadata edits in a movie library is below:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Godzilla (1954):
|
||||
match:
|
||||
title: Godzilla
|
||||
year: 1954
|
||||
content_rating: R
|
||||
Godzilla (1998):
|
||||
match:
|
||||
title: Godzilla
|
||||
year: 1998
|
||||
sort_title: Godzilla 03
|
||||
content_rating: PG-13
|
||||
Shin Godzilla:
|
||||
sort_title: Godzilla 06
|
||||
content_rating: R
|
||||
Godzilla 1985:
|
||||
content_rating: PG
|
||||
"Godzilla 2000: Millennium":
|
||||
originally_available: 1999-08-18
|
||||
Godzilla Against MechaGodzilla:
|
||||
originally_available: 2002-03-23
|
||||
Godzilla Raids Again:
|
||||
content_rating: G
|
||||
originally_available: 1955-05-21
|
||||
Godzilla vs. Biollante:
|
||||
content_rating: PG
|
||||
Godzilla vs. Destoroyah:
|
||||
content_rating: PG
|
||||
originally_available: 1995-01-19
|
||||
Godzilla vs. Gigan:
|
||||
content_rating: G
|
||||
originally_available: 1972-09-14
|
||||
Godzilla vs. Hedorah:
|
||||
content_rating: G
|
||||
originally_available: 1971-04-01
|
||||
Godzilla vs. King Ghidorah:
|
||||
content_rating: PG
|
||||
originally_available: 1991-04-28
|
||||
Godzilla vs. Mechagodzilla:
|
||||
content_rating: G
|
||||
originally_available: 1974-03-24
|
||||
Godzilla vs. Mechagodzilla II:
|
||||
content_rating: PG
|
||||
Godzilla vs. Megaguirus:
|
||||
content_rating: PG
|
||||
originally_available: 2000-08-31
|
||||
Godzilla vs. Megalon:
|
||||
content_rating: G
|
||||
originally_available: 1973-03-17
|
||||
Godzilla vs. Mothra:
|
||||
content_rating: PG
|
||||
originally_available: 1992-04-28
|
||||
Godzilla vs. SpaceGodzilla:
|
||||
content_rating: PG
|
||||
originally_available: 1994-01-19
|
||||
Godzilla, King of the Monsters!:
|
||||
content_rating: G
|
||||
"Godzilla, Mothra and King Ghidorah: Giant Monsters All-Out Attack":
|
||||
content_rating: PG
|
||||
originally_available: 2001-08-31
|
||||
"Godzilla: Final Wars":
|
||||
content_rating: PG
|
||||
originally_available: 2004-12-13
|
||||
"Godzilla: Tokyo S.O.S.":
|
||||
originally_available: 2003-12-14
|
||||
Halloween (Rob Zombie):
|
||||
match:
|
||||
title:
|
||||
- Halloween (Rob Zombie)
|
||||
- Halloween
|
||||
year: 2007
|
||||
"Halo 4: Forward Unto Dawn":
|
||||
match:
|
||||
title:
|
||||
- Halo 4: Forward Unto Dawn
|
||||
- Halo 4 Forward Unto Dawn
|
||||
tmdb_show: 56295
|
||||
content_rating: R
|
||||
```
|
||||
|
||||
## Matching Movies
|
||||
|
||||
The `match` attribute is used to match movies within Plex to that definition within the Metadata file. One definition can match and edit multiple movies. The available matching options are outlined below.
|
||||
|
||||
| Attribute | Description |
|
||||
|:-------------------------------|:------------------------------------------------------------------------------------------------------------------|
|
||||
| `title`<sup>1</sup> | Only matches movies that exactly match the movie's Title. Can be a list (only one needs to match). |
|
||||
| `year` | Only matches movies that were released in the given year. |
|
||||
| `mapping_id`<sup>2</sup> | Only matches movies that have the given TMDb or IMDb ID. |
|
||||
| `edition`<sup>3</sup> | Only matches movies that exactly match the movie's Edition. Can be a list (only one needs to match). |
|
||||
| `edition_contains`<sup>3</sup> | Only matches movies where the movie's Edition contains the given string. Can be a list (only one needs to match). |
|
||||
| `blank_edition`<sup>3</sup> | Only matches movies that have no Edition.<br>**Default:** `false`<br>**Values:** `true` or `false` |
|
||||
|
||||
1. When `title` is not provided and the mapping name was not specified as an ID, the default behaviour is to use the mapping name as `title` for matching.
|
||||
2. When `mapping_id` is not provided and the mapping name was specified as an ID, the default behaviour is to use the mapping name as `mapping_id` for matching.
|
||||
3. When the server does not have a Plex Pass then the Edition Field is not accessible. In this scenario, PMM will check the movie's filepath for `{edition-...}` to determine what the edition is.
|
||||
|
||||
### Examples
|
||||
|
||||
Below are some examples on how movies can be matched.
|
||||
|
||||
#### Example 1 - `title` and `mapping_id`
|
||||
|
||||
The below example shows how `title` and `mapping_id` can be used to match movies.
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
movie1: # Matches via the title "Star Wars"
|
||||
match:
|
||||
title: Star Wars
|
||||
edits...
|
||||
movie2: # Matches via TMDb ID: 299534
|
||||
match:
|
||||
mapping_id: 299534
|
||||
edits...
|
||||
movie3: # Matches via IMDb ID: tt4154756
|
||||
match:
|
||||
mapping_id: tt4154756
|
||||
edits...
|
||||
movie4: # Matches via the title "9"
|
||||
match:
|
||||
title: 9
|
||||
edits...
|
||||
```
|
||||
|
||||
The Mapping Name can also be used to reduce line-count, as shown here:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Star Wars: # Matches via the title "Star Wars"
|
||||
edits...
|
||||
299534: # Matches via TMDb ID: 299534
|
||||
edits...
|
||||
tt4154756: # Matches via IMDb ID: tt4154756
|
||||
edits...
|
||||
"9": # Matches via the title "9"
|
||||
edits...
|
||||
```
|
||||
|
||||
**Note:** to search for a movie titled with a number from the mapping name you must surround the number in quotes like in the example below. Otherwise, it will look for the movie associated with that TMDb ID.
|
||||
|
||||
#### Example 2 - `title` and `year`
|
||||
|
||||
The below example shows how `title` and `year` can be used to match movies.
|
||||
|
||||
In this example, there are two movies in the library called "Godzilla", so the `year` attribute is used to identify which movie is being matched.
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Godzilla (1954): # Matches via the title "Godzilla" released in 1954
|
||||
match:
|
||||
title: Godzilla
|
||||
year: 1954
|
||||
edits...
|
||||
Godzilla (1998): # Matches via the title "Godzilla" released in 1998
|
||||
match:
|
||||
title: Godzilla
|
||||
year: 1998
|
||||
edits...
|
||||
```
|
||||
|
||||
#### Example 3 - using `editions`
|
||||
|
||||
The edition attributes can be used to further specify which version of a movie should be matched within Plex.
|
||||
|
||||
This can be combined with Example 1 as follows
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
movie1: # Matches via the title "Star Wars" and edition containing "4K77"
|
||||
match:
|
||||
title: Star Wars
|
||||
edition_contains: 4K77
|
||||
edits...
|
||||
```
|
||||
|
||||
If you wanted to specify the version of Star Wars which does not have an edition, then the `blank_edition` attribute can be used as shown below:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
movie1: # Matches via the title "Star Wars" and checks for no edition version
|
||||
match:
|
||||
title: Star Wars
|
||||
blank_edition: true
|
||||
edits...
|
||||
```
|
||||
|
||||
## Metadata Edits
|
||||
|
||||
The available attributes for editing movies are as follows
|
||||
|
||||
### Special Attributes
|
||||
|
||||
| Attribute | Description |
|
||||
|:-----------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `tmdb_show` | TMDb Show ID to use for metadata. Used when the Movie in your library is actually a miniseries on TMDb. (Example: [Halo 4: Forward Unto Dawn](https://www.themoviedb.org/tv/56295) or [IT](https://www.themoviedb.org/tv/19614)) **This is not used to say this movie is the given ID.** |
|
||||
| `run_definition` | Used to specify if this definition runs.<br>Multiple can be used for one definition as a list or comma separated string. One `false` or unmatched library type will cause it to fail.<br>**Values:** `movie`, `show`, `artist`, `true`, `false` |
|
||||
|
||||
1. If the server does not have a Plex Pass then the Edition Field is not accessible. In this case PMM will check the movies filepath for `{edition-MOVIES EDITION}` to determine what the edition is.
|
||||
|
||||
### General Attributes
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:-----------------------|:---------------------------------------------------------------|
|
||||
| `title` | Text to change Title. |
|
||||
| `sort_title` | Text to change Sort Title. |
|
||||
| `edition`<sup>1</sup> | Text to change Edition. |
|
||||
| `original_title` | Text to change Original Title. |
|
||||
| `originally_available` | Date to change Originally Available.<br>**Format:** YYYY-MM-DD |
|
||||
| `content_rating` | Text to change Content Rating. |
|
||||
| `user_rating` | Number to change User Rating. |
|
||||
| `audience_rating` | Number to change Audience Rating. |
|
||||
| `critic_rating` | Number to change Critic Rating. |
|
||||
| `studio` | Text to change Studio. |
|
||||
| `tagline` | Text to change Tagline. |
|
||||
| `summary` | Text to change Summary. |
|
||||
|
||||
1. Requires Plex Pass
|
||||
|
||||
### Tag Attributes
|
||||
|
||||
You can add `.remove` to any tag attribute to only remove those tags i.e. `genre.remove`.
|
||||
|
||||
You can add `.sync` to any tag attribute to sync all tags vs just appending the new ones i.e. `genre.sync`.
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:-------------|:-----------------------------------------------------|
|
||||
| `director` | List or comma-separated text of each Director Tag. |
|
||||
| `country` | List or comma-separated text of each Country Tag. |
|
||||
| `genre` | List or comma-separated text of each Genre Tag. |
|
||||
| `writer` | List or comma-separated text of each Writer Tag. |
|
||||
| `producer` | List or comma-separated text of each Producer Tag. |
|
||||
| `collection` | List or comma-separated text of each Collection Tag. |
|
||||
| `label` | List or comma-separated text of each Label Tag. |
|
||||
|
||||
### Image Attributes
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:------------------|:-------------------------------------------------|
|
||||
| `url_poster` | URL of image publicly available on the internet. |
|
||||
| `file_poster` | Path to image in the file system. |
|
||||
| `url_background` | URL of image publicly available on the internet. |
|
||||
| `file_background` | Path to image in the file system. |
|
||||
|
||||
### Advanced Attributes
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:---------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `metadata_language`<sup>1</sup> | `default`, `ar-SA`, `ca-ES`, `cs-CZ`, `da-DK`, `de-DE`, `el-GR`, `en-AU`, `en-CA`, `en-GB`, `en-US`, `es-ES`, `es-MX`, `et-EE`, `fa-IR`, `fi-FI`, `fr-CA`, `fr-FR`, `he-IL`, `hi-IN`, `hu-HU`, `id-ID`, `it-IT`, `ja-JP`, `ko-KR`, `lt-LT`, `lv-LV`, `nb-NO`, `nl-NL`, `pl-PL`, `pt-BR`, `pt-PT`, `ro-RO`, `ru-RU`, `sk-SK`, `sv-SE`, `th-TH`, `tr-TR`, `uk-UA`, `vi-VN`, `zh-CN`, `zh-HK`, `zh-TW` |
|
||||
| `use_original_title`<sup>1</sup> | `default`: Library default<br>`no`: No<br>`yes`: Yes |
|
||||
|
||||
1. Must be using the **New Plex Movie Agent**.
|
138
docs/config/data/metadata/music.md
Normal file
|
@ -0,0 +1,138 @@
|
|||
# Music Library Metadata
|
||||
|
||||
You can have the script edit the metadata of Artists, Albums, and Tracks by adding them to the `metadata` mapping of a Metadata File.
|
||||
|
||||
An example of multiple metadata edits in a music library is below:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
"Linkin Park":
|
||||
country: "United States of America"
|
||||
album_sorting: newest
|
||||
albums:
|
||||
"Hybrid Theory":
|
||||
originally_available: "2000-10-24"
|
||||
tracks:
|
||||
1:
|
||||
user_rating: 5
|
||||
"One Step Closer":
|
||||
user_rating: 5
|
||||
"Meteora":
|
||||
originally_available: "2003-03-25"
|
||||
album_sorting: newest
|
||||
tracks:
|
||||
9:
|
||||
user_rating: 5
|
||||
"Numb":
|
||||
user_rating: 5
|
||||
"Minutes To Midnight":
|
||||
originally_available: "2007-05-14"
|
||||
```
|
||||
|
||||
## Matching Artist
|
||||
|
||||
The `match` attribute is used to match artists within Plex to that definition within the Metadata file. One definition can match and edit multiple artists. The available matching options are outlined below.
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:-------------------------------|:-----------------------------------------------------------------------------------------------------|
|
||||
| `title`<sup>1</sup> | Only matches artists that exactly match the artist's Title. Can be a list (only one needs to match). |
|
||||
|
||||
1. When `title` is not provided and the mapping name was not specified as an ID, the default behaviour is to use the mapping name as `title` for matching.
|
||||
|
||||
### Examples
|
||||
|
||||
Below are some examples on how artists can be matched.
|
||||
|
||||
#### Example 1 - `title`
|
||||
|
||||
The below example shows how `title` can be used to match artists.
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
artist1: # Matches via the title "Ke$ha"
|
||||
match:
|
||||
title: Ke$ha
|
||||
edits...
|
||||
artist2: # Matches via the title "311"
|
||||
match:
|
||||
title: 311
|
||||
edits...
|
||||
```
|
||||
|
||||
The Mapping Name can also be used to reduce line-count, as shown here:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Ke$ha: # Matches via the Name "Ke$ha"
|
||||
edits...
|
||||
"311": # Matches via the Name "311"
|
||||
edits...
|
||||
```
|
||||
|
||||
## Metadata Edits
|
||||
|
||||
The available attributes for editing artists, albums, and tracks are as follows
|
||||
|
||||
### Special Attributes
|
||||
|
||||
| Attribute | Values | Artists | Album | Tracks |
|
||||
|:------------|:----------------------------------------------------------------------------------------------------------------------|:--------:|:--------:|:--------:|
|
||||
| `albums` | Attribute used to edit album metadata. The mapping name is the album name. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `tracks` | Attribute used to edit track metadata. The mapping name is the track number on that Album, or the title of the Track. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
* If you know of another Title your item might exist under, but you want it titled differently you can use `alt_title` to specify another title to look under and then be changed to the mapping name. For Example the Artist `Kesha` used to be stylized as `Ke$ha`, and might still be found that way in Metadata results.
|
||||
```yaml
|
||||
metadata:
|
||||
"Kesha":
|
||||
alt_title: "Ke$ha"
|
||||
```
|
||||
This would change the name of the default `Ke$ha` to `Kesha` and would not mess up any subsequent runs.
|
||||
``
|
||||
### General Attributes
|
||||
|
||||
| Attribute | Values | Artists | Album | Tracks |
|
||||
|:-----------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|:--------:|:--------:|
|
||||
| `title` | Text to change Title. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `sort_title` | Text to change Sort Title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `user_rating` | Number to change User Rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `critic_rating` | Number to change Critic Rating. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `originally_available` | Date to change Originally Available.<br>**Format:** YYYY-MM-DD | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `record_label` | Text to change Record Label. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `summary` | Text to change Summary. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `track` | Text to change Track. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `disc` | Text to change Disc. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `original_artist` | Text to change Original Artist. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `run_definition` | Used to specify if this definition runs.<br>Multiple can be used for one definition as a list or comma separated string. One `false` or unmatched library type will cause it to fail.<br>**Values:** `movie`, `show`, `artist`, `true`, `false` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
### Tag Attributes
|
||||
|
||||
You can add `.remove` to any tag attribute to only remove those tags i.e. `genre.remove`.
|
||||
|
||||
You can add `.sync` to any tag attribute to sync all tags vs just appending the new ones i.e. `genre.sync`.
|
||||
|
||||
| Attribute | Values | Artists | Album | Tracks |
|
||||
|:-----------------|:---------------------------------------------------------|:--------:|:--------:|:--------:|
|
||||
| `genre` | List or comma-separated text of each Genre Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `collection` | List or comma-separated text of each Collection Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `label` | List or comma-separated text of each Label Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `style` | List or comma-separated text of each Style Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `mood` | List or comma-separated text of each Mood Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `country` | List or comma-separated text of each Country Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `similar_artist` | List or comma-separated text of each Similar Artist Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
### Image Attributes
|
||||
|
||||
| Attribute | Values | Artists | Album | Tracks |
|
||||
|:------------------|:-------------------------------------------------|:-------:|:-------:|:--------:|
|
||||
| `url_poster` | URL of image publicly available on the internet. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `file_poster` | Path to image in the file system. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `url_background` | URL of image publicly available on the internet. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `file_background` | Path to image in the file system. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
### Advanced Attributes
|
||||
|
||||
All these attributes only work with Artists.
|
||||
|
||||
| Attribute | Values |
|
||||
|:----------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `album_sorting` | <table class="clearTable"><tbody><tr><td>`default`</td><td>Library default</td></tr><tr><td>`oldest`</td><td>Oldest first</td></tr><tr><td>`newest`</td><td>Newest first</td></tr><tr><td>`name`</td><td>Alphabetical</td></tr></tbody></table> |
|
210
docs/config/data/metadata/show.md
Normal file
|
@ -0,0 +1,210 @@
|
|||
# TV Show Library Metadata
|
||||
|
||||
You can have the script edit the metadata of Shows, Seasons, and Episodes by adding them to the `metadata` mapping of a Metadata File.
|
||||
|
||||
An example of multiple metadata edits in a show library is below:
|
||||
```yaml
|
||||
metadata:
|
||||
"Avatar: The Last Airbender":
|
||||
sort_title: Avatar 01
|
||||
seasons:
|
||||
1:
|
||||
title: "Book One: Water"
|
||||
summary: >-
|
||||
After a lapse of 100 years, the Avatar-spiritual master of the elements-has returned. And just in
|
||||
the nick of time. The Four Nations (Water, Earth, Fire, and Air) have become unbalanced. The Fire
|
||||
Nation wants to rule the world, and its first conquest will be the Northern Water Tribe. It's up to
|
||||
a 12-year-old Airbender named Aang to find a way to stop it. Join Aang, Katara, Sokka, Momo, and
|
||||
Appa as they head north on the adventure of a lifetime.
|
||||
episodes:
|
||||
1:
|
||||
user_rating: 9.1
|
||||
2:
|
||||
title: "Book Two: Earth"
|
||||
summary: >-
|
||||
Avatar Aang continues his quest to master the four elements before the end of summer. Together with
|
||||
Katara, Sokka, Momo, and Appa, he journeys across the Earth Kingdom in search of an Earthbending
|
||||
mentor. Along the way, he confronts Princess Azula, treacherous daughter of Firelord Ozai and
|
||||
sister to Prince Zuko. More powerful than her brother, Azula will stop nothing to defeat the Avatar.
|
||||
But Aang and the gang find plenty of Earth Kingdom allies to help them along the way. From the swamps
|
||||
of the South to the Earth King's palace, Avatar: Book 2 is an adventure like no other.
|
||||
3:
|
||||
title: "Book Three: Fire"
|
||||
summary: >-
|
||||
Having survived the terrible battle with Azula, Aang faces new challenges as he and his brave
|
||||
friends secretly enter the Fire Nation. Their quest is to find and defeat Firelord Ozai. Along
|
||||
the way, they discover that Ozai has plans of his own. The leader of the Fire Nation intends to
|
||||
use the massive power of Sozin's comet to spread his dominion permanently across the four nations.
|
||||
Short on time, Aang has a lot of bending to learn and no master to help him learn it. However, his
|
||||
friends are there to help, and he finds unexpected allies deep in the heart of the Fire Nation. In
|
||||
the spectacular four-part conclusion, Aang must fulfill his destiny and become a fully realized
|
||||
Avatar, or watch the world go up in smoke.
|
||||
episodes:
|
||||
21:
|
||||
summary: The Epic Series Final of Avatar The Last Airbender
|
||||
"Avatar: The Legend of Korra":
|
||||
match:
|
||||
title:
|
||||
- "Avatar: The Legend of Korra"
|
||||
- The Legend of Korra
|
||||
sort_title: Avatar 02
|
||||
original_title: The Legend of Korra
|
||||
seasons:
|
||||
1:
|
||||
title: "Book One: Air"
|
||||
2:
|
||||
title: "Book Two: Spirits"
|
||||
3:
|
||||
title: "Book Three: Change"
|
||||
4:
|
||||
title: "Book Four: Balance"
|
||||
```
|
||||
|
||||
## Matching Shows
|
||||
|
||||
The `match` attribute is used to match shows within Plex to that definition within the Metadata file. One definition can match and edit multiple shows. The available matching options are outlined below.
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:-------------------------------|:------------------------------------------------------------------------------------------------------------------|
|
||||
| `title`<sup>1</sup> | Only matches shows that exactly match the show's Title. Can be a list (only one needs to match). |
|
||||
| `year` | Only matches shows that were released in the given year. |
|
||||
| `mapping_id`<sup>2</sup> | Only matches shows that have the given TVDb or IMDb ID. |
|
||||
|
||||
1. When `title` is not provided and the mapping name was not specified as an ID, the default behaviour is to use the mapping name as `title` for matching.
|
||||
2. When `mapping_id` is not provided and the mapping name was specified as an ID, the default behaviour is to use the mapping name as `mapping_id` for matching.
|
||||
|
||||
### Examples
|
||||
|
||||
Below are some examples on how shows can be matched.
|
||||
|
||||
#### Example 1 - `title` and `mapping_id`
|
||||
|
||||
The below example shows how `title` and `mapping_id` can be used to match shows.
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
show1: # Matches via the title "Game of Thrones"
|
||||
match:
|
||||
title: Game of Thrones
|
||||
edits...
|
||||
show2: # Matches via TVDb ID: 366524
|
||||
match:
|
||||
mapping_id: 366524
|
||||
edits...
|
||||
show3: # Matches via IMDb ID: tt10234724
|
||||
match:
|
||||
mapping_id: tt10234724
|
||||
edits...
|
||||
show4: # Matches via the title "24"
|
||||
match:
|
||||
title: 24
|
||||
edits...
|
||||
```
|
||||
|
||||
The Mapping Name can also be used to reduce line-count, as shown here:
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Game of Thrones: # Matches via the Name "Game of Thrones"
|
||||
edits...
|
||||
366524: # Matches via TVDb ID: 366524
|
||||
edits...
|
||||
tt10234724: # Matches via IMDb ID: tt10234724
|
||||
edits...
|
||||
"24": # Matches via the Name "24"
|
||||
edits...
|
||||
```
|
||||
|
||||
**Note:** to search for a show titled with a number from the mapping name you must surround the number in quotes like in the example below. Otherwise, it will look for the show associated with that TVDb ID.
|
||||
|
||||
#### Example 2 - `title` and `year`
|
||||
|
||||
The below example shows how `title` and `year` can be used to match shows.
|
||||
|
||||
In this example, there are two shows in the library called "Vikings", so the `year` attribute is used to identify which show is being matched.
|
||||
|
||||
```yaml
|
||||
metadata:
|
||||
Vikings (2012): # Matches via the title "Vikings" released in 2012
|
||||
match:
|
||||
title: Vikings
|
||||
year: 2012
|
||||
edits...
|
||||
Vikings (2013): # Matches via the title "Vikings" released in 2013
|
||||
match:
|
||||
title: Vikings
|
||||
year: 2013
|
||||
edits...
|
||||
```
|
||||
|
||||
## Metadata Edits
|
||||
|
||||
The available attributes for editing shows, seasons, and episodes are as follows
|
||||
|
||||
### Special Attributes
|
||||
|
||||
| Attribute | Description | Shows | Seasons | Episodes |
|
||||
|:------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|:--------:|:--------:|
|
||||
| `f1_season` | F1 Season Year to make the Show represent a Season of F1 Races. See [Formula 1 Metadata Guide](../../../pmm/install/guides/formula.md) for more information. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `round_prefix` | Used only with `f1_season` to add the round as a prefix to the Season (Race) Titles i.e. `Australian Grand Prix` --> `01 - Australian Grand Prix`. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `shorten_gp` | Used only with `f1_season` to shorten `Grand Prix` to `GP` in the Season (Race) Titles i.e. `Australian Grand Prix` --> `Australian GP`. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `seasons` | Attribute used to edit season metadata. The mapping name is the season number (use 0 for specials) or the season name. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `episodes` | Attribute used to edit episode metadata. The mapping name is the episode number in that season, the title of the episode, or the Originally Available date in the format `MM/DD`. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `run_definition` | Used to specify if this definition runs.<br>Multiple can be used for one definition as a list or comma separated string. One `false` or unmatched library type will cause it to fail.<br>**Values:** `movie`, `show`, `artist`, `true`, `false` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `update_seasons` | Used to specify if this definition's seasons metadata will update.<br>Multiple can be used for one definition as a list or comma separated string. One `false` will cause it to fail.<br>**Values:** `true`, `false` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `update_episodes` | Used to specify if this definition's episodes metadata will update.<br>Multiple can be used for one definition as a list or comma separated string. One `false` will cause it to fail.<br>**Values:** `true`, `false` | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
### General Attributes
|
||||
|
||||
| Attribute | Allowed Values | Shows | Seasons | Episodes |
|
||||
|:-----------------------|:---------------------------------------------------------------|:-------:|:--------:|:--------:|
|
||||
| `title` | Text to change Title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `sort_title` | Text to change Sort Title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `original_title` | Text to change Original Title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `originally_available` | Date to change Originally Available.<br>**Format:** YYYY-MM-DD | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `content_rating` | Text to change Content Rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `user_rating` | Number to change User Rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `audience_rating` | Number to change Audience Rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `critic_rating` | Number to change Critic Rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `studio` | Text to change Studio. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `tagline` | Text to change Tagline. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `summary` | Text to change Summary. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
### Tag Attributes
|
||||
|
||||
You can add `.remove` to any tag attribute to only remove those tags i.e. `genre.remove`.
|
||||
|
||||
You can add `.sync` to any tag attribute to sync all tags vs just appending the new ones i.e. `genre.sync`.
|
||||
|
||||
| Attribute | Allowed Values | Shows | Seasons | Episodes |
|
||||
|:-------------|:-----------------------------------------------------|:--------:|:--------:|:--------:|
|
||||
| `director` | List or comma-separated text of each Director Tag. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `genre` | List or comma-separated text of each Genre Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| `writer` | List or comma-separated text of each Writer Tag. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `collection` | List or comma-separated text of each Collection Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `label` | List or comma-separated text of each Label Tag. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
### Image Attributes
|
||||
|
||||
| Attribute | Allowed Values | Shows | Seasons | Episodes |
|
||||
|:------------------|:-------------------------------------------------|:-------:|:-------:|:--------:|
|
||||
| `url_poster` | URL of image publicly available on the internet. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `file_poster` | Path to image in the file system. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `url_background` | URL of image publicly available on the internet. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| `file_background` | Path to image in the file system. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
### Advanced Attributes
|
||||
|
||||
All these attributes only work with Shows.
|
||||
|
||||
| Attribute | Allowed Values |
|
||||
|:---------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `episode_sorting` | <table class="clearTable"><tbody><tr><td>`default`</td><td>Library default</td></tr><tr><td>`oldest`</td><td>Oldest first</td></tr><tr><td>`newest`</td><td>Newest first</td></tr></tbody></table> |
|
||||
| `keep_episodes` | <table class="clearTable"><tbody><tr><td>`all`</td><td>All episodes</td></tr><tr><td>`5_latest`</td><td>5 latest episodes</td></tr><tr><td>`3_latest`</td><td>3 latest episodes</td></tr><tr><td>`latest`</td><td>Latest episodes</td></tr><tr><td>`past_3`</td><td>Episodes added in the past 3 days</td></tr><tr><td>`past_7`</td><td>Episodes added in the past 7 days</td></tr><tr><td>`past_30`</td><td>Episodes added in the past 30 days</td></tr></tbody></table> |
|
||||
| `delete_episodes` | <table class="clearTable"><tbody><tr><td>`never`</td><td>Never</td></tr><tr><td>`day`</td><td>After a day</td></tr><tr><td>`week`</td><td>After a week</td></tr><tr><td>`refresh`</td><td>On next refresh</td></tr></tbody></table> |
|
||||
| `season_display` | <table class="clearTable"><tbody><tr><td>`default`</td><td>Library default</td></tr><tr><td>`show`</td><td>Show</td></tr><tr><td>`hide`</td><td>Hide</td></tr></tbody></table> |
|
||||
| `episode_ordering` | <table class="clearTable"><tbody><tr><td>`default`</td><td>Library default</td></tr><tr><td>`tmdb_aired`</td><td>The Movie Database (Aired)</td></tr><tr><td>`tvdb_aired`</td><td>TheTVDb (Aired)</td></tr><tr><td>`tvdb_dvd`</td><td>TheTVDb (DVD)</td></tr><tr><td>`tvdb_absolute`</td><td>TheTVDb (Absolute)</td></tr></tbody></table> |
|
||||
| `metadata_language`<sup>1</sup> | `default`, `ar-SA`, `ca-ES`, `cs-CZ`, `da-DK`, `de-DE`, `el-GR`, `en-AU`, `en-CA`, `en-GB`, `en-US`, `es-ES`, `es-MX`, `et-EE`, `fa-IR`, `fi-FI`, `fr-CA`, `fr-FR`, `he-IL`, `hi-IN`, `hu-HU`, `id-ID`, `it-IT`, `ja-JP`, `ko-KR`, `lt-LT`, `lv-LV`, `nb-NO`, `nl-NL`, `pl-PL`, `pt-BR`, `pt-PT`, `ro-RO`, `ru-RU`, `sk-SK`, `sv-SE`, `th-TH`, `tr-TR`, `uk-UA`, `vi-VN`, `zh-CN`, `zh-HK`, `zh-TW` |
|
||||
| `use_original_title`<sup>1</sup> | <table class="clearTable"><tbody><tr><td>`default`</td><td>Library default</td></tr><tr><td>`no`</td><td>No</td></tr><tr><td>`yes`</td><td>Yes</td></tr></tbody></table> |
|
||||
|
||||
1. Must be using the **New Plex TV Agent**
|
BIN
docs/config/data/myoverlays_example.png
Normal file
After Width: | Height: | Size: 452 KiB |
626
docs/config/data/overlays.md
Normal file
|
@ -0,0 +1,626 @@
|
|||
# Overlay Files
|
||||
|
||||
Overlay Files holds information on how Plex Meta Manager should create Overlays. There are a large number of builders available to build Overlays,
|
||||
|
||||
## Overview
|
||||
|
||||
This example is an Overlay file with a basic overlay which is saved in a file called `MyOverlays.yml` within the location mapped as `config` in my setup.
|
||||
|
||||
This specific example will target items in my library with a 4K resolution and will add an overlay with text that says "Direct Play" located at the bottom of the poster in the center.
|
||||
|
||||
???+ tip "Example Overlay"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
overlays: #(1)!
|
||||
directplay:
|
||||
overlay:
|
||||
name: text(Direct Play) #(2)!
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 150
|
||||
vertical_align: bottom
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
back_color: "#00000099"
|
||||
back_radius: 30
|
||||
back_padding: 30
|
||||
plex_search: #(3)!
|
||||
all:
|
||||
resolution: 4K
|
||||
```
|
||||
|
||||
1. This must appear once and **only once** in any Overlay file
|
||||
2. This tells PMM to use text as the overlay rather than an image
|
||||
3. This is the criteria that PMM will use to define what should receive the overlay
|
||||
|
||||
Here is an example of how the Overlay will look
|
||||
|
||||
![myoverlays_example.png](myoverlays_example.png)
|
||||
|
||||
For the purpose of this example, we are going to save the File as `MyOverlays.yml` within the location mapped as `config` in our setup.
|
||||
|
||||
I then call "MyOverlays.yml" in my [Configuration File](../configuration.md) within the `Overlay_files` section
|
||||
|
||||
???+ example "config.yml Example Overlay File Addition"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies: #(1)!
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- file: config/MyOverlays.yml #(2)!
|
||||
```
|
||||
|
||||
1. This must match the name of a library in your Plex server
|
||||
2. `config` refers to the location that you mapped to `config` when following the PMM Installation Guides.
|
||||
|
||||
???+ example "config.yml Example Collection File Addition"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies: #(1)!
|
||||
Overlay_files:
|
||||
- file: config/MyOverlays.yml #(2)!
|
||||
```
|
||||
|
||||
1. This must match the name of a library in your Plex server
|
||||
2. `config` refers to the location that you mapped to `config` when following the PMM Installation Guides.
|
||||
|
||||
Whenever I execute Plex Meta Manager and the Movies library is run, MyOverlays.yml will run and my "Direct Play" overlay will appear on all items with a 4K resolution.
|
||||
|
||||
## File Attributes
|
||||
|
||||
Overlay Files can utilize the following top-level attributes
|
||||
|
||||
| Attribute | Description |
|
||||
|:-----------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [`templates`](../../builders/templates.md) | contains definitions of templates that can be leveraged by multiple Overlays |
|
||||
| [`external_templates`](../../builders/templates.md#external-templates) | contains [path types](../paths.md) that point to external templates that can be leveraged by multiple Overlays |
|
||||
| [`overlays`](#overlay-attributes) | contains definitions of Overlays you wish to add to one or more libraries |
|
||||
|
||||
* Example Files can be found in the [Plex Meta Manager Configs Repository](https://github.com/meisnate12/Plex-Meta-Manager-Configs/tree/master/PMM)
|
||||
|
||||
## Overlay Understandings
|
||||
|
||||
???+ danger "Important Notes"
|
||||
|
||||
When using overlays, there is some knowledge that you should be aware of at all times. This is outlined below.
|
||||
|
||||
Failure to understand all of these points may cause issues when utilizing Overlays.
|
||||
|
||||
All overlay coordinates assume 1000 x 1500 for Posters and 1920 x 1080 for Backgrounds and Title Cards.
|
||||
|
||||
All overlays should be in a format that is supports transparency should it be required (i.e. PNG)
|
||||
|
||||
If an overlay is not 1000 x 1500 or 1920 x 1080 in size, you will need to use positional attributes to specify where on the base poster the Overlay should be. This is exampled in [Overview](#overview)
|
||||
|
||||
Although Overlays are modular in that you can pick and choose what you would like to apply, each overlay you want to apply **must** be executed in the same Plex Meta Manager run and should not be scheduled, this will result in overlays that are not scheduled to run being deleted.
|
||||
|
||||
* For example, you cannot schedule a "4K Resolution" overlay to only apply on a Monday and a "Direct Play" overlay to only apply on a Tuesday. This will not work, both overlays must be scheduled to run at the same time.
|
||||
|
||||
Plex Meta Manager and Plex **will not** remove old Overlaid images from the Plex file structure or database when new updates are available. On large libraries, this can often result in Image Bloat.
|
||||
|
||||
* We recommend you read more about this and the solution on the [Plex Image Cleanup](../../pmm/essentials/scripts/image-cleanup.md) page.
|
||||
|
||||
There is an attribute called `reapply_overlays` which, when set to true, will force overlays to reapply even when it is not necessary to do so [overlays only update when something has changed, this bypasses that behaviour]. This will increase how long Plex Meta Manager takes to run and will also result in Image Bloat.
|
||||
|
||||
* Ensure `reapply_overlays` is set to `false` if you see it in your Configuration File. If it has previously been set to true we recommend using [Plex Image Cleanup](../../pmm/essentials/scripts/image-cleanup.md) to get rid of the bloat.
|
||||
|
||||
To remove all overlays from your library, add `remove_overlays: true` to the `overlay_files` [Libraries Attribute](../libraries.md#remove-overlays).**
|
||||
|
||||
* See the above note on Plex Meta Manager not removing the overlaid images, this is still true here.
|
||||
|
||||
|
||||
???+ danger "Important Notice"
|
||||
|
||||
Once you have applied overlays to your posters in Plex, it is highly recommended that you never change artwork on a thing directly in Plex again. PMM uses labels on the items in Plex to decide if an overlay has been applied, so if you change artwork behind PMM's back things can become confused and items can end up with double-overlaid posters. It's recommended to set new artwork using the asset directory, which will ensure that this doesn't happen.
|
||||
|
||||
**To change a single overlay original image either remove the `Overlay` shared label and update the Image in Plex or replace the image in the assets folder and then PMM will overlay the new image**
|
||||
|
||||
## Overlay Attributes
|
||||
|
||||
Overlay Files can utilize the following top-level attributes
|
||||
|
||||
| Attribute | Description |
|
||||
|:--------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------|
|
||||
| [`templates`](../../builders/templates.md) | contains definitions of templates that can be leveraged by multiple overlays |
|
||||
| [`external_templates`](../../builders/templates.md#external-templates) | contains [path types](../paths.md) that point to external templates that can be leveraged by multiple overlays |
|
||||
| [`queues`](#overlay-queues) | contains the positional attributes of queues |
|
||||
| [`overlays`](#overlays-attributes) | contains definitions of overlays you wish to add |
|
||||
|
||||
* `overlays` is required in order to run the Overlay File.
|
||||
* Example Overlay Files can be found in the [Plex Meta Manager Configs Repository](https://github.com/meisnate12/Plex-Meta-Manager-Configs/tree/master/PMM)
|
||||
|
||||
There are multiple types of attributes that can be utilized within an overlay:
|
||||
|
||||
* [Builders](../../builders/overview.md)
|
||||
* [Settings/Updates](../../metadata/update.md)
|
||||
* [Filters](../../builders/filters.md)
|
||||
|
||||
## Example Files
|
||||
|
||||
Below is a common Overlay File which will create an Overlay for all items which have a 4K resolution.
|
||||
|
||||
To get you started, Plex Meta Manager includes three files for Overlays - 4K, Dolby and HDR.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
4K:
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
```
|
||||
|
||||
![example_4k.png](example_4k.png)
|
||||
|
||||
I can then layer another Overlay for items which have HDR.
|
||||
|
||||
Plex Meta Manager will apply Overlays in the order they are defined in the file, so my HDR overlay appears on top of my 4K overlay in this scenario.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
4K:
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
HDR:
|
||||
plex_search:
|
||||
all:
|
||||
hdr: true
|
||||
```
|
||||
|
||||
![example_4khdr.png](example_4khdr.png)
|
||||
|
||||
## Advanced Overlay Attributes
|
||||
|
||||
The below attributes are also available for Overlay files, to give more granular control over how they function.
|
||||
|
||||
|
||||
| Attribute | Description | Required |
|
||||
|:---------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|
|
||||
| `name` | Name of the overlay. | ✅ |
|
||||
| `file` | Local location of the Overlay Image. | ❌ |
|
||||
| `url` | URL of Overlay Image Online. | ❌ |
|
||||
| `git` | Location in the [Configs Repo](https://github.com/meisnate12/Plex-Meta-Manager-Configs) of the Overlay Image. | ❌ |
|
||||
| `repo` | Location in the [Custom Repo](../settings.md#custom-repo) of the Overlay Image. | ❌ |
|
||||
| [`group`](#overlay-groups) | Name of the Grouping for this overlay. Only one overlay with the highest weight per group will be applied.<br>**`weight` is required when using `group`**<br>**Values:** group name | ❌ |
|
||||
| [`queue`](#overlay-queues) | Name of the Queue for this overlay. Define `queue` positions using the `queues` attribute at the top level of an Overlay File. Overlay with the highest weight is applied to the first position and so on.<br>**`weight` is required when using `queue`**<br>**Values:** queue name | ❌ |
|
||||
| `weight` | Weight of this overlay in its group or queue.<br>**`group` or `queue` is required when using `weight`**<br>**Values:** Integer 0 or greater | ❌ |
|
||||
| `horizontal_offset` | Horizontal Offset of this overlay. Can be a %.<br>**`vertical_offset` is required when using `horizontal_offset`**<br>**Value:** Integer 0 or greater or 0%-100% | ❌ |
|
||||
| `horizontal_align` | Horizontal Alignment of the overlay.<br>**Values:** `left`, `center`, `right` | ❌ |
|
||||
| `vertical_offset` | Vertical Offset of this overlay. Can be a %.<br>**`horizontal_offset` is required when using `vertical_offset`**<br>**Value:** Integer 0 or greater or 0%-100% | ❌ |
|
||||
| `vertical_align` | Vertical Alignment of the overlay.<br>**Values:** `top`, `center`, `bottom` | ❌ |
|
||||
| `font` | System Font Filename or path to font file for the Text Overlay.<br>**Value:** System Font Filename or path to font file | ❌ |
|
||||
| `font_style` | Font style for Variable Fonts. Only needed when using a Variable Font.<br>**Value:** Variable Font Style | ❌ |
|
||||
| `font_size` | Font Size for the Text Overlay.<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `font_color` | Font Color for the Text Overlay.<br>**Value:** Color Hex Code in format `#RGB`, `#RGBA`, `#RRGGBB` or `#RRGGBBAA`. | ❌ |
|
||||
| `stroke_width` | Font Stroke Width for the Text Overlay.<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `stroke_color` | Font Stroke Color for the Text Overlay.<br>**Value:** Color Hex Code in format `#RGB`, `#RGBA`, `#RRGGBB` or `#RRGGBBAA`. | ❌ |
|
||||
| `back_color` | Backdrop Color for the Text Overlay.<br>**Value:** Color Hex Code in format `#RGB`, `#RGBA`, `#RRGGBB` or `#RRGGBBAA`. | ❌ |
|
||||
| `back_width` | Backdrop Width for the Text Overlay. If `back_width` is not specified the Backdrop Sizes to the text<br>**`back_height` is required when using `back_width`**<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `back_height` | Backdrop Height for the Text Overlay. If `back_height` is not specified the Backdrop Sizes to the text<br>**`back_width` is required when using `back_height`**<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `back_align` | Alignment for the Text Overlay inside the backdrop. If `back_align` is not specified the Backdrop Centers the text<br>**`back_width` and `back_height` are required when using `back_align`**<br>**Values:** `left`, `right`, `center`, `top`, `bottom` | ❌ |
|
||||
| `back_padding` | Backdrop Padding for the Text Overlay.<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `back_radius` | Backdrop Radius for the Text Overlay.<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `back_line_color` | Backdrop Line Color for the Text Overlay.<br>**Value:** Color Hex Code in format `#RGB`, `#RGBA`, `#RRGGBB` or `#RRGGBBAA`. | ❌ |
|
||||
| `back_line_width` | Backdrop Line Width for the Text Overlay.<br>**Value:** Integer greater than 0 | ❌ |
|
||||
| `addon_offset` | Text Addon Image Offset from the text.<br>**`addon_offset` Only works with text overlays**<br>**Value:** Integer 0 or greater | ❌ |
|
||||
| `addon_position` | Text Addon Image Alignment in relation to the text.<br>**`addon_position` Only works with text overlays**<br>**Values:** `left`, `right`, `top`, `bottom` | ❌ |
|
||||
|
||||
* If `url`, `git`, and `repo` are all not defined then PMM will look in your `config/overlays` folder for a `.png` file named the same as the `name` attribute.
|
||||
|
||||
|
||||
### Positional Image Overlays
|
||||
|
||||
Positional overlays can be of any size and use `horizontal_offset`, `horizontal_align`, `vertical_offset`, and `vertical_align` to position the overlay on the image.
|
||||
|
||||
???+ tip
|
||||
|
||||
This overlay example uses one of the [PMM Default Overlay](../../defaults/overlays.md) images, which isn't necessary but is used just for this example.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
IMDB-Top-250:
|
||||
imdb_chart: top_movies
|
||||
overlay:
|
||||
name: IMDB-Top-250
|
||||
pmm: ribbon/yellow/imdb.png
|
||||
horizontal_offset: 0
|
||||
horizontal_align: right
|
||||
vertical_offset: 0
|
||||
vertical_align: bottom
|
||||
```
|
||||
|
||||
![example_positional.png](example_positional.png)
|
||||
|
||||
### Blurring Overlay
|
||||
|
||||
There is a special overlay named `blur` that when given as the overlay name will instead of finding the image will just blur the image instead.
|
||||
|
||||
You can control the level of the blur by providing a number with the attribute like so `blur(##)`.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
blur:
|
||||
overlay:
|
||||
name: blur(50)
|
||||
builder_level: episode
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
```
|
||||
|
||||
![](example_blur.png)
|
||||
|
||||
### Backdrop Overlay
|
||||
|
||||
There is a special overlay named `backdrop` that when given as the overlay name will instead of finding the image will just apply the background instead.
|
||||
|
||||
You can set the size of the backdrop with `back_width` and `back_height`. By Default, they will extend the length of the Image.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
backdrop:
|
||||
overlay:
|
||||
name: backdrop
|
||||
back_color: "#00000099"
|
||||
back_height: 100
|
||||
vertical_position: top
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
This example could be useful if you want to have a black banner, and then use a [Text Overlay](#text-overlay) to add text on top.
|
||||
|
||||
![example_backdrop.png](example_backdrop.png)
|
||||
|
||||
### Text Overlay
|
||||
|
||||
You can add text as an overlay using the special `text()` overlay name. Anything inside the parentheses will be added as an overlay onto the image. Ex `text(4K)` adds `4K` to the image.
|
||||
|
||||
You can control the font, font size and font color using the `font`, `font_size`, and `font_color` overlay attributes.
|
||||
|
||||
You can control the backdrop of the text using the various `back_*` attributes.
|
||||
|
||||
The `horizontal_offset` and `vertical_offset` overlay attributes are required when using Text Overlays.
|
||||
|
||||
PMM includes multiple fonts in the [`fonts` folder](https://github.com/meisnate12/Plex-Meta-Manager/tree/master/fonts) which can be called using `fonts/fontname.ttf`
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
backdrop:
|
||||
overlay:
|
||||
name: backdrop
|
||||
back_color: "#00000099"
|
||||
back_height: 100
|
||||
vertical_position: top
|
||||
plex_all: true
|
||||
mytext:
|
||||
overlay:
|
||||
name: text(This Movie Is Awesome)
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 30
|
||||
vertical_align: top
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
Note that we have built up on our backdrop overlay that we created in our previous example
|
||||
|
||||
![example_text.png](example_text.png)
|
||||
|
||||
#### Special Text Variables
|
||||
|
||||
You can use the item's metadata to determine the text by adding Special Text Variables to your text Overlay.
|
||||
|
||||
There are multiple Special Text Variables that can be used when formatting the text. The variables are defined like so `<<name>>` and some can have modifiers like so `<<name$>>` where `$` is the modifier. The available options are:
|
||||
|
||||
| Special Text Variables & Mods | Movies | Shows | Seasons | Episodes |
|
||||
|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|:--------:|:--------:|:--------:|
|
||||
| `<<audience_rating>>`: audience rating (`8.7`, `9.0`)<br>`<<audience_rating%>>`: audience rating out of 100 (`87`, `90`)<br>`<<audience_rating#>>`: audience rating removing `.0` as needed (`8.7`, `9`)<br>`<<audience_rating/>>`: audience rating on a 5 point scale (`8.6` shows as `4.3`) | ✅ | ✅ | ❌ | ✅ |
|
||||
| `<<critic_rating>>`: critic rating (`8.7`, `9.0`)<br>`<<critic_rating%>>`: critic rating out of 100 (`87`, `90`)<br>`<<critic_rating#>>`: critic rating removing `.0` as needed (`8.7`, `9`)<br>`<<critic_rating/>>`: critic rating on a 5 point scale (`8.6` shows as `4.3`) | ✅ | ✅ | ❌ | ✅ |
|
||||
| `<<user_rating>>`: user rating (`8.7`, `9.0`)<br>`<<user_rating%>>`: user rating out of 100 (`87`, `90`)<br>`<<user_rating#>>`: user rating removing `.0` as needed (`8.7`, `9`)<br>`<<user_rating/>>`: user rating on a 5 point scale (`8.6` shows as `4.3`) | ✅ | ✅ | ✅ | ✅ |
|
||||
| `<<title>>`: Title of the Item<br>`<<titleU>>`: Uppercase Title of the Item<br>`<<titleL>>`Lowercase Title of the Item<br>`<<titleP>>`Proper Title of the Item | ✅ | ✅ | ✅ | ✅ |
|
||||
| `<<show_title>>`: Title of the Item's Show<br>`<<show_itleU>>`: Uppercase Title of the Item's Show<br>`<<show_titleL>>`Lowercase Title of the Item's Show<br>`<<show_titleP>>`Proper Title of the Item's Show | ❌ | ❌ | ✅ | ✅ |
|
||||
| `<<season_title>>`: Title of the Item's Season<br>`<<season_titleU>>`: Uppercase Title of the Item's Season<br>`<<season_titleL>>`Lowercase title of the Item's Season<br>`<<season_titleP>>`Proper title of the Item's Season | ❌ | ❌ | ❌ | ✅ |
|
||||
| `<<original_title>>`: Original Title of the Item<br>`<<original_titleU>>`: Original Title of the Item<br>`<<original_titleL>>`Lowercase Original Title of the Item<br>`<<original_titleP>>`Proper Original Title of the Item | ✅ | ✅ | ❌ | ❌ |
|
||||
| `<<edition>>`: Edition of the Item<br>`<<editionU>>`: Uppercase Edition of the Item<br>`<<editionL>>`Lowercase Edition of the Item<br>`<<editionP>>`Proper Edition of the Item | ✅ | ❌ | ❌ | ❌ |
|
||||
| `<<content_rating>>`: Content Rating of the Item<br>`<<content_ratingU>>`: Uppercase Content Rating of the Item<br>`<<content_ratingL>>`Lowercase Content Rating of the Item<br>`<<content_ratingP>>`Proper Content Rating of the Item | ✅ | ✅ | ❌ | ✅ |
|
||||
| `<<episode_count>>`: Number of Episodes (`1`)<br>`<<episode_countW>>`: Number of Episodes As Words (`One`)<br>`<<episode_countWU>>`: Number of Episodes As Uppercase Words (`ONE`)<br>`<<episode_countWL>>`: Number of Episodes As Lowercase Words (`one`)<br>`<<episode_count0>>`: Number of Episodes With 10s Padding (`01`)<br>`<<episode_count00>>`: Number of Episodes With 100s Padding (`001`) | ❌ | ✅ | ✅ | ❌ |
|
||||
| `<<season_number>>`: Season Number (`1`)<br>`<<season_numberW>>`: Season Number As Words (`One`)<br>`<<season_numberWU>>`: Season Number As Uppercase Words (`ONE`)<br>`<<season_numberWL>>`: Season Number As Lowercase Words (`one`)<br>`<<season_number0>>`: Season Number With 10s Padding (`01`)<br>`<<season_number00>>`: Season Number With 100s Padding (`001`) | ❌ | ❌ | ✅ | ✅ |
|
||||
| `<<episode_number>>`: Episode Number (`1`)<br>`<<episode_numberW>>`: Episode Number As Words (`One`)<br>`<<episode_numberWU>>`: Episode Number As Uppercase Words (`One`)<br>`<<episode_numberWL>>`: Episode Number As Lowercase Words (`one`)<br>`<<episode_number0>>`: Episode Number With 10s Padding (`01`)<br>`<<episode_number00>>`: Episode Number With 100s Padding (`001`) | ❌ | ❌ | ❌ | ✅ |
|
||||
| `<<versions>>`: Number of Versions of the Item (`1`)<br>`<<versionsW>>`: Number of Versions of the Item As Words (`One`)<br>`<<versionsWO>>`: Number of Versions of the Item As Uppercase Words (`ONE`)<br>`<<versionsWL>>`: Number of Versions of the Item As Words (`one`)<br>`<<versions0>>`: Number of Versions of the Item With 10s Padding (`01`)<br>`<<versions00>>`: Number of Versions of the Item With 100s Padding (`001`) | ✅ | ❌ | ❌ | ✅ |
|
||||
| `<<runtime>>`: Complete Runtime of the Item in minutes (`150`)<br>`<<runtimeH>>`: Hours in runtime of the Item (`2`)<br>`<<runtimeM>>`: Minutes remaining in the hour in the runtime of the Item (`30`)<br>**Show and Season use average Episode Runtime.** | ✅ | ✅ | ✅ | ✅ |
|
||||
| `<<bitrate>>`: Bitrate of the first media file for an item.<br>`<<bitrateH>>`: Bitrate of the media file with the highest bitrate<br>`<<bitrateL>>`: Bitrate of the media file with the lowest bitrate | ✅ | ❌ | ❌ | ✅ |
|
||||
| `<<originally_available>>`: Original Available Date of the Item<br>`<<originally_available[FORMAT]>>`: Original Available Date of the Item in the given format. [Format Options](https://strftime.org/) | ✅ | ✅ | ❌ | ✅ |
|
||||
|
||||
???+ tip
|
||||
|
||||
You can use the `mass_audience_rating_update` or `mass_critic_rating_update` [Library Operation](../operations.md) to update your plex ratings to various services like `tmdb`, `imdb`, `mdb`, `metacritic`, `letterboxd` and many more.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
backdrop:
|
||||
overlay:
|
||||
name: backdrop
|
||||
back_color: "#00000099"
|
||||
back_height: 100
|
||||
vertical_position: top
|
||||
plex_all: true
|
||||
mytext:
|
||||
overlay:
|
||||
name: text(Critic Rating is <<critic_rating>>)
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 20
|
||||
vertical_align: top
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
Note that we have once again built up on our backdrop overlay that we created in one of our previous examples
|
||||
|
||||
![example_text.png](example_specialtext.png)
|
||||
|
||||
#### Special Text Modifiers
|
||||
|
||||
Some Special Text attributes (such as ratings) have modifiers which control how they are output. This is detailed in the above table.
|
||||
|
||||
Using the above example for the Critic Rating overlay, I now want to display the rating as "out of 5 stars" instead of "out of 10", so I will use the `/` modifier on my `<<critic_rating>>` attribute
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
backdrop:
|
||||
overlay:
|
||||
name: backdrop
|
||||
back_color: "#00000099"
|
||||
back_height: 100
|
||||
vertical_position: top
|
||||
plex_all: true
|
||||
mytext:
|
||||
overlay:
|
||||
name: text(Rated <<critic_rating/>> out of 5!)
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 20
|
||||
vertical_align: top
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
![example_specialtextmodifier.png](example_specialtextmodifier.png)
|
||||
|
||||
I want to add `S##E##` to all my episode images.
|
||||
```yaml
|
||||
overlays:
|
||||
backdrop:
|
||||
builder_level: episode
|
||||
overlay:
|
||||
name: backdrop
|
||||
back_color: "#00000099"
|
||||
back_height: 100
|
||||
vertical_position: top
|
||||
plex_all: true
|
||||
season_episode_info:
|
||||
builder_level: episode
|
||||
overlay:
|
||||
name: text(This is S<<season_number0>>E<<episode_number0>>)
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 20
|
||||
vertical_align: top
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
![example_episodetext.png](example_episodetext.png)
|
||||
|
||||
##### Common Special Text Uses
|
||||
|
||||
These are some commonly-used examples of Special Text overlays:
|
||||
|
||||
| Special Text | Example Output |
|
||||
|:------------------------------------------------------------------|--------------------|
|
||||
| `name: text(S<<season_number0>>E<<episode_number0>>)` | S01E01 |
|
||||
| `name: text(Season <<season_number>> Episode <<episode_number>>)` | Season 1 Episode 1 |
|
||||
| `name: text(Season <<season_number>>)` | Season 1 |
|
||||
| `name: text(Episode <<episode_number>>)` | Episode 1 |
|
||||
| `name: "text(Runtime: <<runtime>>m)"` | Runtime: 90m |
|
||||
| `name: "text(Runtime: <<runtimeH>>h <<runtimeM>>m)"` | Runtime: 1h 30m |
|
||||
|
||||
#### Text Addon Images
|
||||
|
||||
You can add an image to accompany the text by specifying the image location using `file`, `url`, `git`, or `repo`.
|
||||
|
||||
Use `addon_offset` to control the space between the text and the image.
|
||||
|
||||
Use `addon_position` to control which side of the text the image will be located on.
|
||||
|
||||
???+ tip
|
||||
|
||||
This overlay example uses one of the [PMM Default Overlay](../../defaults/overlays.md) images, which isn't necessary but is used just for this example.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
rating_with_logo:
|
||||
overlay:
|
||||
name: text(audience_rating)
|
||||
pmm: rating/IMDb.png
|
||||
horizontal_offset: 15
|
||||
horizontal_align: left
|
||||
vertical_offset: 15
|
||||
vertical_align: top
|
||||
font: fonts/Inter-Medium.ttf
|
||||
font_size: 63
|
||||
font_color: "#FFFFFF"
|
||||
back_color: "#00000099"
|
||||
back_radius: 30
|
||||
back_width: 300
|
||||
back_height: 105
|
||||
addon_position: left
|
||||
addon_offset: 25
|
||||
plex_all: true
|
||||
```
|
||||
|
||||
![example_addonoffset.png](example_addonoffset.png)
|
||||
|
||||
### Overlay Groups
|
||||
|
||||
Overlay groups are defined by the name given to the `group` attribute. Only one overlay with the highest weight per group will be applied.
|
||||
|
||||
This is an example where the Multi-Audio overlay will be applied over the Dual-Audio overlay for every item found by both.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
Dual-Audio:
|
||||
overlay:
|
||||
name: Dual-Audio
|
||||
pmm: images/Dual-Audio
|
||||
group: audio_language
|
||||
weight: 10
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 15
|
||||
vertical_align: bottom
|
||||
plex_all: true
|
||||
filters:
|
||||
audio_language.count_gt: 1
|
||||
Multi-Audio:
|
||||
overlay:
|
||||
name: Multi-Audio
|
||||
pmm: images/Multi-Audio
|
||||
group: audio_language
|
||||
weight: 20
|
||||
horizontal_offset: 0
|
||||
horizontal_align: center
|
||||
vertical_offset: 15
|
||||
vertical_align: bottom
|
||||
plex_all: true
|
||||
filters:
|
||||
audio_language.count_gt: 2
|
||||
```
|
||||
|
||||
### Overlay Queues
|
||||
|
||||
Overlay queues are defined by the name given to the `queue` attribute. The overlay with the highest weight is put into the first queue position, then the second highest is placed in the second queue position and so on.
|
||||
|
||||
You can define the queue positions by using the `queues` attribute at the top level of an Overlay File. You can define as many positions as you want.
|
||||
|
||||
```yaml
|
||||
queues:
|
||||
custom_queue_name:
|
||||
- horizontal_offset: 300 # This is the first position
|
||||
horizontal_align: center
|
||||
vertical_offset: 1375
|
||||
vertical_align: top
|
||||
- horizontal_offset: 300 # This is the second position
|
||||
horizontal_align: center
|
||||
vertical_offset: 1250
|
||||
vertical_align: top
|
||||
|
||||
overlays:
|
||||
IMDb:
|
||||
imdb_chart: popular_movies
|
||||
overlay:
|
||||
name: text(IMDb Popular)
|
||||
queue: custom_queue_name
|
||||
weight: 20
|
||||
font: fonts/Inter-Medium.ttf
|
||||
font_size: 65
|
||||
font_color: "#FFFFFF"
|
||||
back_color: "#00000099"
|
||||
back_radius: 30
|
||||
back_width: 380
|
||||
back_height: 105
|
||||
TMDb:
|
||||
tmdb_popular: 100
|
||||
overlay:
|
||||
name: text(TMDb Popular)
|
||||
queue: custom_queue_name
|
||||
weight: 10
|
||||
font: fonts/Inter-Medium.ttf
|
||||
font_size: 65
|
||||
font_color: "#FFFFFF"
|
||||
back_color: "#00000099"
|
||||
back_radius: 30
|
||||
back_width: 400
|
||||
back_height: 105
|
||||
```
|
||||
|
||||
## Suppress Overlays
|
||||
|
||||
You can add `suppress_overlays` to an overlay definition and give it a list or comma separated string of overlay names you want suppressed from this item if this overlay is attached to the item.
|
||||
|
||||
So in this example if the `4K-HDR` overlay matches an item then the `4K` and `HDR` overlays will also match. The `suppress_overlays` attribute on `4K-HDR` will stop the overlays specified (`4K` and `HDR`) from also being applied.
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
4K:
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
HDR:
|
||||
plex_search:
|
||||
all:
|
||||
hdr: true
|
||||
4K-HDR:
|
||||
suppress_overlays:
|
||||
- 4K
|
||||
- HDR
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
hdr: true
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
### Example Overlay File
|
||||
|
||||
```yaml
|
||||
overlays:
|
||||
4K:
|
||||
overlay:
|
||||
name: 4K # This will look for a local overlays/4K.png in your config folder
|
||||
plex_search:
|
||||
all:
|
||||
resolution: 4K
|
||||
HDR:
|
||||
overlay:
|
||||
name: HDR
|
||||
pmm: HDR
|
||||
plex_search:
|
||||
all:
|
||||
hdr: true
|
||||
Dolby:
|
||||
overlay:
|
||||
name: Dolby
|
||||
url: https://somewebsite.com/dolby_overlay.png
|
||||
plex_all: true
|
||||
filters:
|
||||
has_dolby_vision: true
|
||||
```
|
||||
|
||||
### Example Folder Structure
|
||||
|
||||
```
|
||||
config
|
||||
├── config.yml
|
||||
├── Movies.yml
|
||||
├── TV Shows.yml
|
||||
├── Overlays.yml
|
||||
├── overlays
|
||||
│ ├── 4K.png
|
||||
│ ├── Dolby.png
|
||||
│ ├── HDR.png
|
||||
```
|
139
docs/config/data/playlists.md
Normal file
|
@ -0,0 +1,139 @@
|
|||
# Playlist Files
|
||||
|
||||
Playlist files are used to create and maintain playlists on the Plex Server.
|
||||
|
||||
If utilized to their fullest, these files can be used to maintain the entire server's collections and playlists, and can be used as a backup for these in the event of a restore requirement.
|
||||
|
||||
???+ tip
|
||||
|
||||
Playlists are defined in one or more Playlist files that are mapped in the [Playlist Files Attribute](../playlists.md) within the Configuration File.
|
||||
|
||||
You can use the [`playlist_report` setting](../settings.md#playlist-report) to get a list of your playlists printed out in your log.
|
||||
|
||||
## Example
|
||||
|
||||
This example is a Playlist file with a basic overlay which is saved in a file called `MyPlaylists.yml` within the location mapped as `config` in my setup.
|
||||
|
||||
|
||||
???+ example "Example "MyPlaylists.yml""
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
collections: #(1)!
|
||||
Top 50 Grossing Films of All Time (Worldwide):
|
||||
tmdb_list: 10 #(2)!
|
||||
collection_order: custom #(3)!
|
||||
sync_mode: sync #(4)!
|
||||
```
|
||||
|
||||
1. This must appear once and **only once** in any Metadata file
|
||||
2. This creates a collection based on tmdb list ID 10, https://www.themoviedb.org/list/10 would also be accepted
|
||||
3. This will sort the items in the Plex collection to be the same as the order in the list
|
||||
4. Syncs the collection to the list, so that if an item is added/removed from the list, the same is done to the collection. Set this to `append` if you only want it to add things and not remove them.
|
||||
|
||||
???+ example "config.yml Example Collection File Addition"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
playlists: #(1)!
|
||||
Marvel Cinematic Universe Chronological Order:
|
||||
sync_mode: sync
|
||||
libraries: Movies, TV Shows #(2)!
|
||||
sync_to_users: User1, someone@somewhere.com, User3 #(3)!
|
||||
trakt_list: https://trakt.tv/users/donxy/lists/marvel-cinematic-universe
|
||||
summary: Marvel Cinematic Universe In Chronological Order
|
||||
```
|
||||
|
||||
1. This must appear once and **only once** in any Playlist file
|
||||
2. These libraries must exist in your Plex library
|
||||
3. Leave this blank if you only only want the Playlist to sync to the server owner's account
|
||||
|
||||
This file would then be defined in my `config.yml` file as a `playlist_files` item:
|
||||
|
||||
???+ warning "Important Note"
|
||||
|
||||
Playlist files are not called within the `libraries` section, they are defined at the root identation as you can see in the below example.
|
||||
|
||||
???+ example "config.yml Example Playlists Addition"
|
||||
|
||||
Click the :fontawesome-solid-circle-plus: icon to learn more
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
# Metadata and Overlay files here
|
||||
TV Shows:
|
||||
# Metadata and Overlay files here
|
||||
playlist_files: #(1)!
|
||||
- file: config/MyPlaylists.yml #(2)!
|
||||
```
|
||||
|
||||
1. Note that Playlist files are not called within the `libraries` section, they are defined at the root identation as you can see here
|
||||
2. `config` refers to the location that you mapped to `config` when following the PMM Installation Guides.
|
||||
|
||||
## Playlist Attributes
|
||||
|
||||
Plex Meta Manager can automatically build and update playlists defined within the `playlists` attribute.
|
||||
|
||||
These are the attributes which can be utilized within the Playlist File:
|
||||
|
||||
| Attribute | Description |
|
||||
|:--------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------|
|
||||
| [`templates`](../../builders/templates.md) | contains definitions of templates that can be leveraged by multiple playlists |
|
||||
| [`external_templates`](../../builders/templates.md#external-templates) | contains [path types](../paths.md) that point to external templates that can be leveraged by multiple playlists |
|
||||
| [`playlists`](#playlist-attributes) | contains definitions of playlists you wish to add to the server |
|
||||
|
||||
* `playlists` is required in order to run the Playlist File.
|
||||
* You can find example Playlist Files in the [Plex Meta Manager Configs Repository](https://github.com/meisnate12/Plex-Meta-Manager-Configs/tree/master/PMM)
|
||||
* Plex does not support the "Continue Watching" feature for playlists, you can [vote for the feature here](https://forums.plex.tv/t/playlists-remember-position-for-subsequent-resume/84866/39)
|
||||
|
||||
|
||||
Each playlist requires its own section within the `playlists` attribute and unlike collections, playlists can only be built using one Builder as their ordering is inherited from the builder; it is not possible to combine builders.
|
||||
|
||||
```yaml
|
||||
playlists:
|
||||
Marvel Cinematic Universe Chronological Order:
|
||||
# ... builder, details, and filters for this playlist
|
||||
Star Wars Clone Wars Chronological Order:
|
||||
# ... builder, details, and filters for this playlist
|
||||
etc:
|
||||
# ... builder, details, and filters for this playlist
|
||||
```
|
||||
|
||||
There are multiple types of attributes that can be utilized within a playlist:
|
||||
|
||||
* [Builders](../../builders/overview.md)
|
||||
* [Settings/Updates](../../metadata/update.md)[update.md]
|
||||
* [Filters](../../builders/filters.md)
|
||||
|
||||
### Special Playlist Attributes
|
||||
|
||||
| Attribute | Description | Required |
|
||||
|:------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------:|
|
||||
| `libraries` | Determine which libraries the playlist will be built from.<br>**Options:** Comma-separated string or list of library mapping names defined in the `libraries` attribute in the base of your [Configuration File](../configuration.md. | ✅ |
|
||||
| `sync_to_users` | Determine which Users have the playlist synced.<br>This will override the global [`playlist_sync_to_users` Setting](../settings.md#playlist-sync-to-users).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | ❌ |
|
||||
| `exclude_users` | Determine which Users will be excluded from having the playlist synced.<br>This will override the global [`playlist_excude_users` Setting](../settings.md#playlist-exclude-users).<br>**Options:** Comma-separated string or list of users, `all` for every user who has server access, or leave blank for just the server owner. | ❌ |
|
||||
| `delete_playlist` | Will delete this playlist for the users defined by sync_to_users.<br>**Options:** `true` or `false` | ❌ |
|
||||
|
||||
* Any defined playlist will be always be visible by The Plex Media Server owner, so it doesn't need to be defined within `sync_to_users`.
|
||||
|
||||
## Example Playlists
|
||||
|
||||
In the following example, media is pulled from the `Movies` and `TV Shows` libraries into the one Playlist, and the playlist is shared with a specific set of users:
|
||||
|
||||
```yaml
|
||||
playlists:
|
||||
Marvel Cinematic Universe Chronological Order:
|
||||
sync_mode: sync
|
||||
libraries: Movies, TV Shows
|
||||
sync_to_users: User1, someone@somewhere.com, User3
|
||||
trakt_list: https://trakt.tv/users/donxy/lists/marvel-cinematic-universe?sort=rank,asc
|
||||
summary: Marvel Cinematic Universe In Chronological Order
|
||||
Star Wars Clone Wars Chronological Order:
|
||||
sync_to_users: all
|
||||
sync_mode: sync
|
||||
libraries: Movies, TV Shows
|
||||
trakt_list: https://trakt.tv/users/tomfin46/lists/star-wars-the-clone-wars-chronological-episode-order
|
||||
```
|
39
docs/config/files.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
# Files
|
||||
|
||||
Files define the structure and format for creating Collections, Overlays, Playlists, and Metadata Edits within your libraries.
|
||||
|
||||
Files are modular and when properly leveraged, they not only facilitate the management of your library's collections and metadata but also serve as a crucial backup resource in case a restore is necessary.
|
||||
|
||||
There are four main File types that can be utilized against Plex servers:
|
||||
|
||||
| File Type | Description |
|
||||
|:-----------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [Collection Files](data/collections.md) | Defines the data for building collections, allowing you to group and showcase your library in unique ways |
|
||||
| [Overlay Files](data/overlays.md) | Defines the data for building overlays, allowing you to place information such as resolutions and ratings onto your posters. |
|
||||
| Metadata Files ([Movies](data/metadata/movie.md)/[Shows](data/metadata/show.md)/[Music](data/metadata/music.md)) | Defines the data for editing metadata, allowing you to find and manipulate the metadata on individual items within your library. |
|
||||
| [Playlist Files](data/playlists.md) | Defines the data for building playlists, allowing you to combine media from multiple libraries and share them with users on your server |
|
||||
|
||||
Collection, Overlay and Metadata Files can be linked to libraries in the [Libraries Attribute](../config/libraries.md#metadata-path) within the [Configuration File](../config/configuration.md).
|
||||
|
||||
## Example
|
||||
|
||||
This is a basic Files structure showing the use of all four File types.
|
||||
|
||||
???+ example "Example Files"
|
||||
|
||||
Unlike the other three, Playlist Files are not defined per-library.
|
||||
|
||||
Theis examples utilizes the [PMM Defaults](../defaults/files.md)
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
overlay_files:
|
||||
- pmm: resolution
|
||||
metadata_files:
|
||||
- file: config/metadata.yml
|
||||
playlist_files:
|
||||
- pmm: playlists
|
||||
```
|
|
@ -24,7 +24,7 @@ This example is an advanced version of the library mappings which highlights som
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
- pmm: imdb
|
||||
- pmm: studio
|
||||
|
@ -34,11 +34,11 @@ This example is an advanced version of the library mappings which highlights som
|
|||
mass_critic_rating_update: tmdb
|
||||
split_duplicates: true
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
- pmm: tmdb
|
||||
- pmm: network
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- file: config/Overlays.yml
|
||||
TV Shows On Second Plex:
|
||||
|
@ -46,12 +46,12 @@ This example is an advanced version of the library mappings which highlights som
|
|||
plex:
|
||||
url: http://192.168.1.98:32400
|
||||
token: ####################
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
- pmm: tmdb
|
||||
- pmm: network
|
||||
Anime:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Anime.yml
|
||||
- pmm: myanimelist
|
||||
radarr:
|
||||
|
@ -79,20 +79,21 @@ This example is an advanced version of the library mappings which highlights som
|
|||
|
||||
The available attributes for each library are as follows:
|
||||
|
||||
| Attribute | Values | Default | Required |
|
||||
|:-------------------------------------------------------|:------------------------------------------------------------------------------------------------------|:--------------------------------------|:------------------------------------------------------------------:|
|
||||
| [`library_name`](#library-name) | Library name (required only when trying to use multiple libraries with the same name) | Base Attribute Name | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`metadata_path`](#metadata-path) | Location of Metadata YAML files | `/config/<<MAPPING_NAME>>.yml` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`overlay_path`](#overlay-path) | Location of Overlay YAML files | None | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`report_path`](#report-path) | Location to create the YAML file listing added, removed, filtered, and missing items for this library | `/config/<<MAPPING_NAME>>_report.yml` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`template_variables`](#library-template-variables) | Library template variables to be applied to every Metadata and Overlay file run. | N/A | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`schedule`](../builders/details/schedule.md) | Use any [schedule option](../builders/details/schedule.md) to control when this library is run. | daily | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`operations`](operations.md) | Library Operations to run | N/A | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`settings`](settings.md) | Any `setting` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`plex`](plex.md) | Any `plex` attribute that overrides a global value | global | :fontawesome-solid-circle-check:{ .green } Either here or globally |
|
||||
| [`radarr`](radarr.md) | Any `radarr` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`sonarr`](sonarr.md) | Any `sonarr` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`tautulli`](tautulli.md) | Any `tautulli` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| Attribute | Values | Default | Required |
|
||||
|:----------------------------------------------------|:------------------------------------------------------------------------------------------------------|:--------------------------------------|:------------------------------------------------------------------:|
|
||||
| [`library_name`](#library-name) | Library name (required only when trying to use multiple libraries with the same name) | Base Attribute Name | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`collection_files`](#collection-file) | Location of Collection YAML files | `/config/<<MAPPING_NAME>>.yml` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`overlay_files`](#overlay-file) | Location of Overlay YAML files | None | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`metadata_files`](#metadata-file) | Location of Metadata YAML files | None | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`report_path`](#report-path) | Location to create the YAML file listing added, removed, filtered, and missing items for this library | `/config/<<MAPPING_NAME>>_report.yml` | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`template_variables`](#library-template-variables) | Library template variables to be applied to every Metadata and Overlay file run. | N/A | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`schedule`](../builders/details/schedule.md) | Use any [schedule option](../builders/details/schedule.md) to control when this library is run. | daily | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`operations`](operations.md) | Library Operations to run | N/A | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`settings`](settings.md) | Any `setting` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`plex`](plex.md) | Any `plex` attribute that overrides a global value | global | :fontawesome-solid-circle-check:{ .green } Either here or globally |
|
||||
| [`radarr`](radarr.md) | Any `radarr` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`sonarr`](sonarr.md) | Any `sonarr` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [`tautulli`](tautulli.md) | Any `tautulli` attribute that overrides a global value | global | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
|
||||
### Library Name
|
||||
|
||||
|
@ -118,45 +119,45 @@ Each library that the user wants Plex Meta Manager to interact with must be docu
|
|||
|
||||
* In this example, `"Movies01"`, `"TV Shows"`, and `"Anime"` will all use the global plex server (http://192.168.1.12:32400) which is defined using the global `plex` mapping. `"Movies02"` will use the plex server http://192.168.1.35:32400 which is defined under its `plex` mapping over the global mapping.
|
||||
|
||||
### Metadata Path
|
||||
### Collection File
|
||||
|
||||
The `metadata_path` attribute is used to define [Metadata Files](../metadata/metadata.md) by specifying the path type and path of the files that will be executed against the parent library. See [Path Types](paths.md) for how to define them.
|
||||
The `collection_files` attribute is used to define [Collection Files](data/collections.md) by specifying the path type and path of the files that will be executed against the parent library. See [Path Types](paths.md) for how to define them.
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
- pmm: tmdb
|
||||
- pmm: network
|
||||
```
|
||||
|
||||
By default, when `metadata_path` is missing Plex Meta Manager will look within the root PMM directory for a metadata file called `<MAPPING_NAME>.yml`. In this example, Plex Meta Manager will look for a file named `TV Shows.yml`.
|
||||
By default, when `collection_files` is missing Plex Meta Manager will look within the root PMM directory for a collection file called `<MAPPING_NAME>.yml`. In this example, Plex Meta Manager will look for a file named `TV Shows.yml`.
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
```
|
||||
|
||||
### Overlay Path
|
||||
### Overlay File
|
||||
|
||||
The `overlay_path` attribute is used to define [Overlay Files](../metadata/overlay.md) by specifying the path type and path of the files that will be executed against the parent library. See [Path Types](paths.md) for how to define them.
|
||||
The `overlay_files` attribute is used to define [Overlay Files](data/overlays.md) by specifying the path type and path of the files that will be executed against the parent library. See [Path Types](paths.md) for how to define them.
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- file: config/Overlays.yml
|
||||
```
|
||||
|
||||
### Special Overlay Path Calls
|
||||
### Special Overlay File Calls
|
||||
|
||||
#### Remove Overlays
|
||||
|
||||
|
||||
You can remove overlays from a library by adding `remove_overlays: true` to `overlay_path`.
|
||||
You can remove overlays from a library by adding `remove_overlays: true` to `overlay_files`.
|
||||
|
||||
???+ warning "Proceed with Caution"
|
||||
|
||||
|
@ -165,16 +166,16 @@ You can remove overlays from a library by adding `remove_overlays: true` to `ove
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: true
|
||||
- file: config/Overlays.yml
|
||||
```
|
||||
|
||||
#### Reapply Overlays
|
||||
|
||||
You can reapply overlays from a library by adding `reapply_overlays: true` to `overlay_path`. This will reapply overlays to every item in your library.
|
||||
You can reapply overlays from a library by adding `reapply_overlays: true` to `overlay_files`. This will reapply overlays to every item in your library.
|
||||
|
||||
???+ danger "Important Notice"
|
||||
|
||||
|
@ -183,16 +184,16 @@ You can reapply overlays from a library by adding `reapply_overlays: true` to `o
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- reapply_overlays: true
|
||||
- file: config/Overlays.yml
|
||||
```
|
||||
|
||||
#### Reset Overlays
|
||||
|
||||
You can reset overlays from a library by adding `reset_overlays` to `overlay_path` and setting it to either `tmdb` or `plex` depending on where you want to source the images from. This will use the reset image when overlaying items in your library.
|
||||
You can reset overlays from a library by adding `reset_overlays` to `overlay_files` and setting it to either `tmdb` or `plex` depending on where you want to source the images from. This will use the reset image when overlaying items in your library.
|
||||
|
||||
???+ danger "Important Notice"
|
||||
|
||||
|
@ -202,16 +203,16 @@ You can reset overlays from a library by adding `reset_overlays` to `overlay_pat
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- reset_overlays: plex
|
||||
- file: config/Overlays.yml
|
||||
```
|
||||
|
||||
### Schedule Overlays
|
||||
|
||||
You can schedule all overlays from a library by adding `schedule` to `overlay_path` and setting it to [Any Schedule Option](../builders/details/schedule.md).
|
||||
You can schedule all overlays from a library by adding `schedule` to `overlay_files` and setting it to [Any Schedule Option](../builders/details/schedule.md).
|
||||
|
||||
You cannot schedule individual Overlay Files, as any unscheduled overlay file will be removed each time PMM is run.
|
||||
|
||||
|
@ -220,13 +221,30 @@ You cannot schedule individual Overlay Files, as any unscheduled overlay file wi
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- schedule: weekly(sunday)
|
||||
- file: config/Overlays.yml
|
||||
```
|
||||
|
||||
### Metadata File
|
||||
|
||||
The `metadata_files` attribute is used to define Metadata Files by specifying the path of the files that will be executed against the parent library. See [Path Types](paths.md) for how to define them.
|
||||
|
||||
???+ tip
|
||||
|
||||
As of Plex Meta Manager 1.19.2 "Metadata Files" refers to YAML files which refers to managing the metadata of items [movies, shows, music] within your library, and "Collection Files" refers to YAML files which define Collections.
|
||||
|
||||
In previous version of Plex Meta Manager, "Metadata Files" could mean either of the above.
|
||||
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_files:
|
||||
- file: config/metadata.yml
|
||||
```
|
||||
### Report Path
|
||||
|
||||
The `report_path` attribute is used to define where to save the YAML Report file. This file is used to store information about what media is added, removed, filtered, and missing from the Plex library compared to what is expected from the Metadata file.
|
||||
|
|
|
@ -11,7 +11,7 @@ Within each library, operations can be defined by using the `operations` attribu
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
operations:
|
||||
mass_critic_rating_update: tmdb
|
||||
|
@ -20,31 +20,31 @@ libraries:
|
|||
|
||||
The available attributes for the operations attribute are as follows
|
||||
|
||||
| Attribute | Description | Movies | Shows | Music |
|
||||
|:----------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------|:----------:|:--------:|:--------:|
|
||||
| [Assets For All](#assets-for-all) | Search in assets for images for every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Delete Collections](#delete-collections) | Deletes collections based on a set of given attributes. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Mass Genre Update](#mass-genre-update) | Updates every item's genres in the library to the chosen site's genres. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Mass Content Rating Update](#mass-content-rating-update) | Updates every item's content rating in the library to the chosen site's content rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Original Title Update](#mass-original-title-update) | Updates every item's original title in the library to the chosen site's original title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Studio Update](#mass-studio-update) | Updates every item's studio in the library to the chosen site's studio. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Originally Available Update](#mass-originally-available-update) | Updates every item's originally available date in the library to the chosen site's date. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass * Rating Update](#mass-rating-update) | Updates every item's audience/critic/user rating in the library to the chosen site's rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Episode * Rating Update](#mass-episode-rating-update) | Updates every item's episode's audience/critic/user rating in the library to the chosen site's rating. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Poster Update](#mass-poster-update) | Updates every item's poster to the chosen sites poster. Will fallback to `plex` if the given option fails. Assets will be used over anything else. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Background Update](#mass-background-update) | Updates every item's background to the chosen sites background. Will fallback to `plex` if the given option fails. Assets will be used over anything else. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass IMDb Parental Labels](#mass-imdb-parental-labels) | Updates every item's labels in the library to match the IMDb Parental Guide. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Collection Mode](#mass-collection-mode) | Updates every Collection in your library to the specified Collection Mode. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Update Blank Track Titles](#update-blank-track-titles) | Search though every track in a music library and replace any blank track titles with the tracks sort title. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Remove Title Parentheses](#remove-title-parentheses) | Search through every title and remove all ending parentheses in an items title if the title is not locked. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Split Duplicates](#split-duplicates) | Splits all duplicate movies/shows found in this library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Radarr Add All](#radarr-add-all) | Adds every item in the library to Radarr. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Radarr Remove By Tag](#radarr-remove-by-tag) | Removes every item from Radarr with the Tags given. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Sonarr Add All](#sonarr-add-all) | Adds every item in the library to Sonarr. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Sonarr Remove By Tag](#sonarr-remove-by-tag) | Removes every item from Sonarr with the Tags given. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Genre Mapper](#genre-mapper) | Allows genres to be changed to other genres or be removed from every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Content Rating Mapper](#content-rating-mapper) | Allows content ratings to be changed to other content ratings or be removed from every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Metadata Backup](#metadata-backup) | Creates/Maintains a PMM [Metadata File](../metadata/metadata.md) with a full `metadata` mapping based on the library's items locked attributes. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| Attribute | Description | Movies | Shows | Music |
|
||||
|:----------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------:|:-------------------------------------------:|:-------------------------------------------:|
|
||||
| [Assets For All](#assets-for-all) | Search in assets for images for every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Delete Collections](#delete-collections) | Deletes collections based on a set of given attributes. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Mass Genre Update](#mass-genre-update) | Updates every item's genres in the library to the chosen site's genres. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Mass Content Rating Update](#mass-content-rating-update) | Updates every item's content rating in the library to the chosen site's content rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Original Title Update](#mass-original-title-update) | Updates every item's original title in the library to the chosen site's original title. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Studio Update](#mass-studio-update) | Updates every item's studio in the library to the chosen site's studio. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Originally Available Update](#mass-originally-available-update) | Updates every item's originally available date in the library to the chosen site's date. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass * Rating Update](#mass-rating-update) | Updates every item's audience/critic/user rating in the library to the chosen site's rating. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Episode * Rating Update](#mass-episode-rating-update) | Updates every item's episode's audience/critic/user rating in the library to the chosen site's rating. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Poster Update](#mass-poster-update) | Updates every item's poster to the chosen sites poster. Will fallback to `plex` if the given option fails. Assets will be used over anything else. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Background Update](#mass-background-update) | Updates every item's background to the chosen sites background. Will fallback to `plex` if the given option fails. Assets will be used over anything else. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass IMDb Parental Labels](#mass-imdb-parental-labels) | Updates every item's labels in the library to match the IMDb Parental Guide. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Mass Collection Mode](#mass-collection-mode) | Updates every Collection in your library to the specified Collection Mode. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Update Blank Track Titles](#update-blank-track-titles) | Search though every track in a music library and replace any blank track titles with the tracks sort title. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } |
|
||||
| [Remove Title Parentheses](#remove-title-parentheses) | Search through every title and remove all ending parentheses in an items title if the title is not locked. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Split Duplicates](#split-duplicates) | Splits all duplicate movies/shows found in this library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Radarr Add All](#radarr-add-all) | Adds every item in the library to Radarr. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Radarr Remove By Tag](#radarr-remove-by-tag) | Removes every item from Radarr with the Tags given. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Sonarr Add All](#sonarr-add-all) | Adds every item in the library to Sonarr. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Sonarr Remove By Tag](#sonarr-remove-by-tag) | Removes every item from Sonarr with the Tags given. | :fontawesome-solid-circle-xmark:{ .red } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Genre Mapper](#genre-mapper) | Allows genres to be changed to other genres or be removed from every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Content Rating Mapper](#content-rating-mapper) | Allows content ratings to be changed to other content ratings or be removed from every item in your library. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-xmark:{ .red } |
|
||||
| [Metadata Backup](#metadata-backup) | Creates/Maintains a PMM Metadata File with a full `metadata` mapping based on the library's items locked attributes. | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } | :fontawesome-solid-circle-check:{ .green } |
|
||||
|
||||
## Assets For All
|
||||
|
||||
|
@ -656,7 +656,7 @@ Maps content ratings in your library to be changed to other content ratings.
|
|||
|
||||
## Metadata Backup
|
||||
|
||||
Creates/Maintains a Plex Meta Manager [Metadata File](../metadata/metadata.md) with a full `metadata` mapping based on the library's items locked attributes.
|
||||
Creates/Maintains a Plex Meta Manager Metadata File with a full `metadata` mapping based on the library's items locked attributes.
|
||||
|
||||
If you point to an existing Metadata File then PMM will Sync the changes to the file, so you won't lose non plex changes in the file.
|
||||
|
||||
|
@ -667,7 +667,7 @@ If you point to an existing Metadata File then PMM will Sync the changes to the
|
|||
| Attribute | Description |
|
||||
|:--------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `path` | Path to where the metadata will be saved/maintained<br>**Default:** <<library_name>>_Metadata_Backup.yml in your config folder<br>**Values:** Path to Metadata File |
|
||||
| `exclude` | Exclude all listed attributes from being saved in the metadata file<br>**Values:** Comma-separated string or list of attributes |
|
||||
| `exclude` | Exclude all listed attributes from being saved in the collection file<br>**Values:** Comma-separated string or list of attributes |
|
||||
| `sync_tags` | All Tag Attributes will have the `.sync` option and blank attribute will be added to sync to as well<br>**Default:** `false`<br>**Values:** `true` or `false` |
|
||||
| `add_blank_entries` | Will add a line for entries that have no metadata changes<br>**Default:** `true`<br>**Values:** `true` or `false` |
|
||||
|
||||
|
|
|
@ -1,22 +1,22 @@
|
|||
# Path Types
|
||||
|
||||
YAML Files are defined by their path type and path location for the [`metadata_path`](libraries.md#metadata-path), [`overlay_path`](libraries.md#overlay-path), [`playlist_files`](libraries.md#metadata-path), and [`external_templates`](libraries.md#metadata-path) attributes.
|
||||
YAML Files are defined by their path type and path location for the [`collection_files`](libraries.md#metadata-path), [`overlay_files`](libraries.md#overlay-path), [`playlist_files`](libraries.md#metadata-path), and [`external_templates`](libraries.md#metadata-path) attributes.
|
||||
|
||||
They can either be on the local system, online at an url, directly from the [Plex Meta Manager Configs](https://github.com/meisnate12/Plex-Meta-Manager-Configs) repository, or from another [`Custom Repository`](settings.md#custom-repo).
|
||||
|
||||
The path types are outlined as follows:
|
||||
|
||||
* `- file:` refers to a metadata file which is located within the system that PMM is being run from.
|
||||
* `- file:` refers to a collection file which is located within the system that PMM is being run from.
|
||||
|
||||
* `- folder:` refers to a directory containing metadata files which is located within the system that PMM is being run from.
|
||||
* `- folder:` refers to a directory containing collection files which is located within the system that PMM is being run from.
|
||||
|
||||
* `- pmm:` refers to a [PMM Defaults](/defaults/guide.md builders/overlay/playlist file.
|
||||
|
||||
* `- url:` refers to a metadata file which is hosted publicly on the internet.
|
||||
* `- url:` refers to a collection file which is hosted publicly on the internet.
|
||||
|
||||
* `- git:` refers to a metadata file which is hosted on the [Configs Repo](https://github.com/meisnate12/Plex-Meta-Manager-Configs).
|
||||
* `- git:` refers to a collection file which is hosted on the [Configs Repo](https://github.com/meisnate12/Plex-Meta-Manager-Configs).
|
||||
|
||||
* `- repo:` refers to a metadata file which is hosted on a custom repository specified by the user with the [`custom_repo` Setting Attribute](settings.md#custom-repo).
|
||||
* `- repo:` refers to a collection file which is hosted on a custom repository specified by the user with the [`custom_repo` Setting Attribute](settings.md#custom-repo).
|
||||
|
||||
|
||||
## Examples
|
||||
|
@ -24,7 +24,7 @@ The path types are outlined as follows:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/path/to/file.yml
|
||||
- folder: config/path/to/folder
|
||||
```
|
||||
|
@ -60,7 +60,7 @@ You can define [Template Variables](../builders/templates.md#template-variables)
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: genre
|
||||
template_variables:
|
||||
schedule_separator: never
|
||||
|
@ -75,18 +75,18 @@ In this example there will be two template variables added to every template in
|
|||
|
||||
`schedule_separator` is set to `never` to not show a separator in this section and `collection_mode` is set to `hide`.
|
||||
|
||||
What these variables will do depends on how they're defined in the Metadata File.
|
||||
What these variables will do depends on how they're defined in the Collection File.
|
||||
|
||||
### Schedule
|
||||
|
||||
Each [`metadata_path`](libraries.md#metadata-path), [`overlay_path`](libraries.md#overlay-path), or [`playlist_files`](libraries.md#metadata-path) can be scheduled by adding the `schedule` attribute to the dictionary defining the file.
|
||||
Each [`collection_files`](libraries.md#metadata-path), [`overlay_files`](libraries.md#overlay-path), or [`playlist_files`](libraries.md#metadata-path) can be scheduled by adding the `schedule` attribute to the dictionary defining the file.
|
||||
|
||||
Below is an example of a scheduled Metadata File and Playlist File:
|
||||
Below is an example of a scheduled Collection File and Playlist File:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
schedule: weekly(friday)
|
||||
- pmm: actors
|
||||
|
@ -107,12 +107,12 @@ You can define custom Asset Directories per file by adding `asset_directory` to
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
asset_directory: <path_to_assets>/Movies
|
||||
- pmm: actors
|
||||
asset_directory: <path_to_assets>/people
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: imdb
|
||||
playlist_files:
|
||||
- file: config/Playlists.yml
|
||||
|
@ -121,18 +121,18 @@ playlist_files:
|
|||
- <path_to_assets>/playlists2
|
||||
```
|
||||
|
||||
## Metadata Path
|
||||
## Collection File
|
||||
|
||||
The [`metadata_path`](libraries.md#metadata-path) attribute is defined under the [`libraries`](libraries.md) attribute in your [Configuration File](configuration.md.
|
||||
The [`collection_files`](libraries.md#metadata-path) attribute is defined under the [`libraries`](libraries.md) attribute in your [Configuration File](configuration.md.
|
||||
|
||||
??? example
|
||||
|
||||
In this example, multiple metadata file path types are defined for the `"TV Shows"` library:
|
||||
In this example, multiple collection file path types are defined for the `"TV Shows"` library:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TVShows.yml
|
||||
- folder: config/TV Shows/
|
||||
- pmm: tmdb
|
||||
|
@ -142,19 +142,19 @@ The [`metadata_path`](libraries.md#metadata-path) attribute is defined under the
|
|||
|
||||
Within the above example, PMM will:
|
||||
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a metadata file named `TVShows.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a collection file named `TVShows.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `TV Shows`, and then load any metadata files within that directory.
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `TV Shows`, and then load any collection files within that directory.
|
||||
|
||||
* Then, look in the [defaults folder](https://github.com/meisnate12/Plex-Meta-Manager/tree/master/defaults) within the local PMM folder [or docker container] for a file called `tmdb.yml` which it finds [here](https://github.com/meisnate12/Plex-Meta-Manager/blob/master/defaults/chart/tmdb.yml).
|
||||
|
||||
* Then, look within the Custom Defined Repo for a file called `charts.yml`.
|
||||
|
||||
* Finally, load the metadata file located at `https://somewhere.com/PopularTV.yml`
|
||||
* Finally, load the collection file located at `https://somewhere.com/PopularTV.yml`
|
||||
|
||||
## Overlay Path
|
||||
## Overlay File
|
||||
|
||||
The [`overlay_path`](libraries.md#overlay-path) attribute is defined under the [`libraries`](libraries.md) attribute in your [Configuration File](configuration.md.
|
||||
The [`overlay_files`](libraries.md#overlay-path) attribute is defined under the [`libraries`](libraries.md) attribute in your [Configuration File](configuration.md.
|
||||
|
||||
??? example
|
||||
|
||||
|
@ -163,7 +163,7 @@ The [`overlay_path`](libraries.md#overlay-path) attribute is defined under the [
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- file: config/overlays.yml
|
||||
- folder: config/overlay configs/
|
||||
- pmm: imdb
|
||||
|
@ -173,15 +173,15 @@ The [`overlay_path`](libraries.md#overlay-path) attribute is defined under the [
|
|||
|
||||
Within the above example, PMM will:
|
||||
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a metadata file named `overlays.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a collection file named `overlays.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `overlay configs`, and then load any metadata files within that directory.
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `overlay configs`, and then load any collection files within that directory.
|
||||
|
||||
* Then, look in the [defaults folder](https://github.com/meisnate12/Plex-Meta-Manager/tree/master/defaults) within the local PMM folder [or docker container] for a file called `imdb.yml`.
|
||||
|
||||
* Then, look within the Custom Defined Repo for a file called `overlays.yml`.
|
||||
|
||||
* Finally, load the metadata file located at `https://somewhere.com/Overlays.yml`
|
||||
* Finally, load the collection file located at `https://somewhere.com/Overlays.yml`
|
||||
|
||||
## Playlist Files
|
||||
|
||||
|
@ -214,7 +214,7 @@ The [`playlist_files`](playlists.md) at the top level in your [Configuration Fil
|
|||
|
||||
## External Templates
|
||||
|
||||
The [`external_templates`](../builders/templates.md#external-templates) attribute is defined at the top level in your [Metadata File](../builders/details/metadata.md).
|
||||
The [`external_templates`](../builders/templates.md#external-templates) attribute is defined at the top level in your [Collection File](../data/collections.md).
|
||||
|
||||
??? example
|
||||
|
||||
|
@ -231,11 +231,11 @@ The [`external_templates`](../builders/templates.md#external-templates) attribut
|
|||
|
||||
Within the above example, PMM will:
|
||||
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a metadata file named `templates.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
* First, look within the root of the PMM directory (also known as `config/`) for a collection file named `templates.yml`. If this file does not exist, PMM will skip the entry and move to the next one in the list.
|
||||
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `templates`, and then load any metadata files within that directory.
|
||||
* Then, look within the root of the PMM directory (also known as `config/`) for a directory called `templates`, and then load any collection files within that directory.
|
||||
|
||||
* Then, load the metadata file located at `https://somewhere.com/templates.yml`.
|
||||
* Then, load the collection file located at `https://somewhere.com/templates.yml`.
|
||||
|
||||
* Then, look in the [defaults folder](https://github.com/meisnate12/Plex-Meta-Manager/tree/master/defaults) within the local PMM folder [or docker container] for a file called `templates.yml` which it finds [here](https://github.com/meisnate12/Plex-Meta-Manager/blob/master/defaults/templates.yml).
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Playlist Files Attributes
|
||||
|
||||
As playlists are not tied to one specific library and can combine media from multiple libraries, they require their own special [Playlist Files](../metadata/playlist.md) to work.
|
||||
As playlists are not tied to one specific library and can combine media from multiple libraries, they require their own special [Playlist Files](data/playlists.md) to work.
|
||||
|
||||
Within the [Config File](configuration.md, the `playlist_files` attribute specifies the [path type](paths.md) and path of the [Playlist Files](../metadata/playlist.md) that the user wants Plex Meta Manager to act on.
|
||||
Within the [Config File](configuration.md, the `playlist_files` attribute specifies the [path type](paths.md) and path of the [Playlist Files](data/playlists.md) that the user wants Plex Meta Manager to act on.
|
||||
|
||||
**The libraries used in the playlist attribute `libraries` must be defined under the `libraries` attribute of the [Config File](configuration.md.**
|
||||
|
||||
|
@ -19,7 +19,7 @@ This example is an advanced version of the playlist mappings with accompanying l
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
- pmm: imdb
|
||||
- pmm: studio
|
||||
|
@ -29,11 +29,11 @@ libraries:
|
|||
mass_critic_rating_update: tmdb
|
||||
split_duplicates: true
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV Shows.yml
|
||||
- pmm: tmdb
|
||||
- pmm: network
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- file: config/Overlays.yml
|
||||
playlist_files:
|
||||
|
|
|
@ -27,9 +27,9 @@ plex:
|
|||
| `token` | Plex Server Authentication Token | N/A | ✅ |
|
||||
| `timeout` | Plex Server Timeout | 60 | ❌ |
|
||||
| `db_cache` | Plex Server Database Cache Size | None | ❌ |
|
||||
| `clean_bundles` | Runs Clean Bundles on the Server after all Metadata Files are run | false | ❌ |
|
||||
| `empty_trash` | Runs Empty Trash on the Server after all Metadata Files are run | false | ❌ |
|
||||
| `optimize` | Runs Optimize on the Server after all Metadata Files are run | false | ❌ |
|
||||
| `clean_bundles` | Runs Clean Bundles on the Server after all Collection Files are run | false | ❌ |
|
||||
| `empty_trash` | Runs Empty Trash on the Server after all Collection Files are run | false | ❌ |
|
||||
| `optimize` | Runs Optimize on the Server after all Collection Files are run | false | ❌ |
|
||||
|
||||
???+ warning
|
||||
|
||||
|
@ -42,16 +42,16 @@ This script can be run on a remote Plex server, but be sure that the `url` provi
|
|||
|
||||
# Multi-Plex Instance Setup:
|
||||
|
||||
The below config.yml extract details how to set up multiple Plex servers within the one PMM instance, in this example there are two plex servers which are receiving the same Metadata File:
|
||||
The below config.yml extract details how to set up multiple Plex servers within the one PMM instance, in this example there are two plex servers which are receiving the same Collection File:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
Movies_on_Second_Plex:
|
||||
library_name: Movies
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
plex:
|
||||
url: http://plex.boing.bong
|
||||
|
|
|
@ -89,24 +89,24 @@ In this example we have two Radarr instances, standard and 4K, and four librarie
|
|||
```
|
||||
libraries:
|
||||
Library01: # this library uses the default radarr config
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
|
||||
Library02: # this library overrides radarr root path and profile
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
radarr:
|
||||
root_folder_path: /data/media/movies/tony
|
||||
quality_profile: Better
|
||||
|
||||
Library03: # this library overrides radarr quality profile
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
radarr:
|
||||
quality_profile: Best
|
||||
|
||||
Library04: # this library uses the 4K radarr instance
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
radarr:
|
||||
url: https://radarr-4k.bing.bang
|
||||
|
@ -115,7 +115,7 @@ libraries:
|
|||
quality_profile: Bestest
|
||||
|
||||
Library05: # movies get added by a custom script so they should get added to radarr-4k
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
radarr:
|
||||
url: https://radarr-4k.bing.bang
|
||||
|
|
|
@ -100,16 +100,16 @@ libraries:
|
|||
- operations
|
||||
- overlays
|
||||
minimum_items: 3 #(2)!
|
||||
metadata_path:
|
||||
collection_files:
|
||||
# stuff here
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
# stuff here
|
||||
operations:
|
||||
# stuff here
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
# stuff here
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
# stuff here
|
||||
operations:
|
||||
# stuff here
|
||||
|
@ -193,8 +193,8 @@ Whilst searching for assets, if an asset folder cannot be found within the `asse
|
|||
|
||||
Asset Searches can happen in a number of ways.
|
||||
|
||||
* Any Collection specified under the `collections` header in a Metadata File.
|
||||
* Any Item specified under the `metadata` header in a Metadata File.
|
||||
* Any Collection specified under the `collections` header in a Collection File.
|
||||
* Any Item specified under the `metadata` header in a Collection File.
|
||||
* Any Playlist specified under the `playlists` header in a Playlist File.
|
||||
* Any Item in a library that is running the `assets_for_all` Library Operation.
|
||||
* Any Item that has an Overlay applied to it.
|
||||
|
@ -393,8 +393,7 @@ While `show_missing` is true items missing from collections will be displayed.
|
|||
|
||||
## Only Filter Missing
|
||||
|
||||
Only items missing from a collection will be filtered. **Only specific filters can filter missing. See [Filters](../metadata/filters.md) for more information.**
|
||||
|
||||
Only items missing from a collection will be filtered. **Only specific filters can filter missing. See [Filters](../builders/filters.md) for more information.**
|
||||
???+ note
|
||||
|
||||
this can be used to filter which missing media items get sent to Sonarr/Radarr
|
||||
|
@ -514,11 +513,11 @@ Set `playlist_report` to true to print out a playlist report at the end of the l
|
|||
|
||||
## Run Order
|
||||
|
||||
Specify the run order of the library components [Library Operations, Metadata Files and Overlay Files]
|
||||
Specify the run order of the library components [Library Operations, Collection Files and Overlay Files]
|
||||
|
||||
???+ tip
|
||||
|
||||
If not specified, the default run order is Library Operations, then Metadata Files, then Overlay Files
|
||||
If not specified, the default run order is Library Operations, then Collection Files, then Overlay Files
|
||||
|
||||
```yml
|
||||
settings:
|
||||
|
@ -536,7 +535,7 @@ Specify the run order of the library components [Library Operations, Metadata Fi
|
|||
|
||||
## Custom Repo
|
||||
|
||||
Specify where the `repo` attribute's base is when defining `metadata_path`, `playlist_file` and `overlay_path`.
|
||||
Specify where the `repo` attribute's base is when defining `collection_files`, `playlist_file` and `overlay_files`.
|
||||
|
||||
???+ note
|
||||
|
||||
|
|
|
@ -97,24 +97,24 @@ In this example we have two Sonarr instances, standard and 4K, with five librari
|
|||
```
|
||||
libraries:
|
||||
Library01: # this library uses the default sonarr config
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
|
||||
Library02: # this library overrides sonarr root path and profile
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
sonarr:
|
||||
root_folder_path: /data/media/shows/tony
|
||||
quality_profile: Better
|
||||
|
||||
Library03: # this library overrides sonarr quality profile
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
sonarr:
|
||||
quality_profile: Best
|
||||
|
||||
Library04: # this library uses the 4K sonarr instance
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
sonarr:
|
||||
url: https://sonarr-4k.bing.bang
|
||||
|
@ -123,7 +123,7 @@ libraries:
|
|||
quality_profile: Bestest
|
||||
|
||||
Library05: # shows get added by a custom script so they should get added to sonarr-4k
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
sonarr:
|
||||
url: https://sonarr-4k.bing.bang
|
||||
|
|
|
@ -30,10 +30,10 @@ In this example we have a separate Tautulli instance for TV.
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/Movies.yml
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- file: config/TV.yml
|
||||
tautulli:
|
||||
url: http://192.168.1.14:8659
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# British Academy of Film and Television Arts Awards Collections
|
||||
|
||||
The `bafta` Default Metadata File is used to create collections based on the British Academy of Film and Television Arts Awards.
|
||||
The `bafta` Default Collection File is used to create collections based on the British Academy of Film and Television Arts Awards.
|
||||
|
||||
![](../images/bafta.png)
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: bafta
|
||||
```
|
||||
|
||||
|
@ -66,7 +66,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: bafta
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Cannes Awards Collections
|
||||
|
||||
The `cannes` Default Metadata File is used to create collections based on the Cannes Film Awards.
|
||||
The `cannes` Default Collection File is used to create collections based on the Cannes Film Awards.
|
||||
|
||||
![](../images/cannes.png)
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: cannes
|
||||
```
|
||||
|
||||
|
@ -66,7 +66,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: cannes
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Critics Choice Awards Collections
|
||||
|
||||
The `choice` Default Metadata File is used to create collections based on the Critics Choice Awards.
|
||||
The `choice` Default Collection File is used to create collections based on the Critics Choice Awards.
|
||||
|
||||
![](../images/choice.png)
|
||||
|
||||
|
@ -23,10 +23,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: choice
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: choice
|
||||
```
|
||||
|
||||
|
@ -68,7 +68,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: choice
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Emmy Awards Collections
|
||||
|
||||
The `emmy` Default Metadata File is used to create collections based on the Emmy Awards.
|
||||
The `emmy` Default Collection File is used to create collections based on the Emmy Awards.
|
||||
|
||||
![](../images/emmy.png)
|
||||
|
||||
|
@ -21,10 +21,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: emmy
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: emmy
|
||||
```
|
||||
|
||||
|
@ -66,7 +66,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: emmy
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Golden Globes Awards Collections
|
||||
|
||||
The `golden` Default Metadata File is used to create collections based on the Golden Globe Awards.
|
||||
The `golden` Default Collection File is used to create collections based on the Golden Globe Awards.
|
||||
|
||||
![](../images/golden.png)
|
||||
|
||||
|
@ -25,10 +25,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: golden
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: golden
|
||||
```
|
||||
|
||||
|
@ -70,7 +70,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: golden
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Academy Awards (Oscars) Collections
|
||||
|
||||
The `oscars` Default Metadata File is used to create collections based on the Academy Awards (Oscars).
|
||||
The `oscars` Default Collection File is used to create collections based on the Academy Awards (Oscars).
|
||||
|
||||
![](../images/oscars.png)
|
||||
|
||||
|
@ -23,7 +23,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: oscars
|
||||
```
|
||||
|
||||
|
@ -65,7 +65,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: oscars
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Other Awards Collections
|
||||
|
||||
The `other_award` Default Metadata File is used to create collections based on numerous other awards.
|
||||
The `other_award` Default Collection File is used to create collections based on numerous other awards.
|
||||
|
||||
![](../images/awardother.png)
|
||||
|
||||
|
@ -26,7 +26,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: other_award
|
||||
```
|
||||
|
||||
|
@ -62,7 +62,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: other_award
|
||||
template_variables:
|
||||
use_berlinale: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Award Separator Collections
|
||||
|
||||
The `separator_award` Default Metadata File is used to create a seperator collection for Awards.
|
||||
The `separator_award` Default Collection File is used to create a seperator collection for Awards.
|
||||
|
||||
![](../images/awardseparator.png)
|
||||
|
||||
|
@ -21,10 +21,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_award
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_award
|
||||
```
|
||||
|
||||
|
@ -53,7 +53,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_award
|
||||
template_variables:
|
||||
sep_style: purple #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Independent Spirit Awards Collections
|
||||
|
||||
The `spirit` Default Metadata File is used to create collections based on the Independent Spirit Awards.
|
||||
The `spirit` Default Collection File is used to create collections based on the Independent Spirit Awards.
|
||||
|
||||
![](../images/spirit.png)
|
||||
|
||||
|
@ -23,7 +23,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: spirit
|
||||
```
|
||||
|
||||
|
@ -65,7 +65,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: spirit
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Sundance Film Festival Awards Collections
|
||||
|
||||
The `sundance` Default Metadata File is used to create collections based on the Sundance Film Festival Awards.
|
||||
The `sundance` Default Collection File is used to create collections based on the Sundance Film Festival Awards.
|
||||
|
||||
![](../images/sundance.png)
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: sundance
|
||||
```
|
||||
|
||||
|
@ -66,7 +66,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: sundance
|
||||
template_variables:
|
||||
collection_mode: show_items #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Actor Collections
|
||||
|
||||
The `actor` Default Metadata File is used to dynamically create collections based on the most popular actors/actresses in your library.
|
||||
The `actor` Default Collection File is used to dynamically create collections based on the most popular actors/actresses in your library.
|
||||
|
||||
## Requirements & Recommendations
|
||||
|
||||
|
@ -24,10 +24,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
```
|
||||
|
||||
|
@ -73,7 +73,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
template_variables:
|
||||
data:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Aspect Ratio Collections
|
||||
|
||||
The `aspect` Default Metadata File is used to create collections with items that are based on their aspect ratio.
|
||||
The `aspect` Default Collection File is used to create collections with items that are based on their aspect ratio.
|
||||
|
||||
![](../images/aspect.png)
|
||||
|
||||
|
@ -29,10 +29,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: aspect
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: aspect
|
||||
```
|
||||
|
||||
|
@ -75,7 +75,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: aspect
|
||||
template_variables:
|
||||
use_1.65: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Audio Language Collections
|
||||
|
||||
The `audio_language` Default Metadata File is used to dynamically create collections based on the audio languages available in your library.
|
||||
The `audio_language` Default Collection File is used to dynamically create collections based on the audio languages available in your library.
|
||||
|
||||
![](../images/audio_language.png)
|
||||
|
||||
|
@ -23,10 +23,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: audio_language
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: audio_language
|
||||
```
|
||||
|
||||
|
@ -70,7 +70,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: audio_language
|
||||
template_variables:
|
||||
use_other: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Based On... Collections
|
||||
|
||||
The `based` Default Metadata File is used to create collections with items that are based on or inspired by various media outlets (such as Books or Video Games).
|
||||
The `based` Default Collection File is used to create collections with items that are based on or inspired by various media outlets (such as Books or Video Games).
|
||||
|
||||
![](../images/based.png)
|
||||
|
||||
|
@ -25,10 +25,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: based
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: based
|
||||
```
|
||||
|
||||
|
@ -67,7 +67,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: based
|
||||
template_variables:
|
||||
sep_style: navy #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Collectionless Collection
|
||||
|
||||
The `collectionless` Default Metadata File is used to create a [Collectionless collection](../../builders/plex.md#plex-collectionless) to help Show/Hide Movies/Shows properly in your library.
|
||||
The `collectionless` Default Collection File is used to create a [Collectionless collection](../../builders/plex.md#plex-collectionless) to help Show/Hide Movies/Shows properly in your library.
|
||||
|
||||
![](../images/collectionless.png)
|
||||
|
||||
|
@ -8,7 +8,7 @@ The `collectionless` Default Metadata File is used to create a [Collectionless c
|
|||
|
||||
Supported Library Types: Movie, Show
|
||||
|
||||
Requirements: For this file to work it needs to run last under `metadata_path` and all other normal collections must use `collection_mode: hide_items`
|
||||
Requirements: For this file to work it needs to run last under `collection_files` and all other normal collections must use `collection_mode: hide_items`
|
||||
|
||||
## Collection
|
||||
|
||||
|
@ -25,12 +25,12 @@ libraries:
|
|||
Movies:
|
||||
template_variables:
|
||||
collection_mode: hide_items
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: collectionless
|
||||
TV Shows:
|
||||
template_variables:
|
||||
collection_mode: hide_items
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: collectionless
|
||||
```
|
||||
|
||||
|
@ -61,7 +61,7 @@ libraries:
|
|||
Movies:
|
||||
template_variables:
|
||||
collection_mode: hide_items
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: collectionless
|
||||
template_variables:
|
||||
exclude:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Common Sense Media Content Rating Collections
|
||||
|
||||
The `content_rating_cs` Default Metadata File is used to dynamically create collections based on the content ratings available in your library.
|
||||
The `content_rating_cs` Default Collection File is used to dynamically create collections based on the content ratings available in your library.
|
||||
|
||||
If you do not use the Common Sense-based rating system within Plex, this file will attempt to match the ratings in your library to the respective rating system.
|
||||
|
||||
|
@ -27,10 +27,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_cs
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_cs
|
||||
```
|
||||
|
||||
|
@ -77,7 +77,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_cs
|
||||
template_variables:
|
||||
sep_style: blue #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# MAL Content Rating Collections
|
||||
|
||||
The `content_rating_mal` Default Metadata File is used to dynamically create collections based on the content ratings available in your library.
|
||||
The `content_rating_mal` Default Collection File is used to dynamically create collections based on the content ratings available in your library.
|
||||
|
||||
If you do not use the MAL-based rating system within Plex, this file will attempt to match the ratings in your library to the respective rating system.
|
||||
|
||||
|
@ -27,10 +27,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_mal
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_mal
|
||||
```
|
||||
|
||||
|
@ -73,7 +73,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_mal
|
||||
template_variables:
|
||||
sep_style: tan #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# UK Content Rating Collections
|
||||
|
||||
The `content_rating_uk` Default Metadata File is used to dynamically create collections based on the content ratings available in your library.
|
||||
The `content_rating_uk` Default Collection File is used to dynamically create collections based on the content ratings available in your library.
|
||||
|
||||
If you do not use the UK-based rating system within Plex, this file will attempt to match the ratings in your library to the respective rating system.
|
||||
|
||||
|
@ -27,10 +27,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_uk
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_uk
|
||||
```
|
||||
|
||||
|
@ -77,7 +77,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_cs
|
||||
template_variables:
|
||||
sep_style: stb #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Genre Collections
|
||||
|
||||
The `genre` Default Metadata File is used to dynamically create collections based on the genres available in your library.
|
||||
The `genre` Default Collection File is used to dynamically create collections based on the genres available in your library.
|
||||
|
||||
This file also merges similarly named genres (such as "Sci-Fi", "SciFi" and "Sci-Fi & Fantasy") into one ("Science Fiction")
|
||||
|
||||
|
@ -24,10 +24,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: genre
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: genre
|
||||
```
|
||||
|
||||
|
@ -71,7 +71,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: genre
|
||||
template_variables:
|
||||
sep_style: red #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Resolution Collections
|
||||
|
||||
The `resolution` Default Metadata File is used to dynamically create collections based on the resolutions available in your library.
|
||||
The `resolution` Default Collection File is used to dynamically create collections based on the resolutions available in your library.
|
||||
|
||||
![](../images/resolution.png)
|
||||
|
||||
|
@ -30,10 +30,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: resolution
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: resolution
|
||||
```
|
||||
|
||||
|
@ -81,7 +81,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: resolution
|
||||
template_variables:
|
||||
sep_style: green #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Streaming Collections
|
||||
|
||||
The `streaming` Default Metadata File is used to dynamically create collections based on the streaming Services that your media is available on.
|
||||
The `streaming` Default Collection File is used to dynamically create collections based on the streaming Services that your media is available on.
|
||||
|
||||
![](../images/streaming.png)
|
||||
|
||||
|
@ -38,10 +38,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: streaming
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: streaming
|
||||
```
|
||||
|
||||
|
@ -98,7 +98,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: streaming
|
||||
template_variables:
|
||||
region: fr #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Studio Collections
|
||||
|
||||
The `studio` Default Metadata File is used to dynamically create collections based on the studios available in your library.
|
||||
The `studio` Default Collection File is used to dynamically create collections based on the studios available in your library.
|
||||
|
||||
This file also merges similarly named studios (such as "20th Century Fox" and "20th Century Animation") into one ("20th Century Studios")
|
||||
|
||||
|
@ -24,10 +24,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: studio
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: studio
|
||||
```
|
||||
|
||||
|
@ -74,7 +74,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: studio
|
||||
template_variables:
|
||||
append_include:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Subtitle Language Collections
|
||||
|
||||
The `subtitle_language` Default Metadata File is used to dynamically create collections based on the subtitle languages available in your library.
|
||||
The `subtitle_language` Default Collection File is used to dynamically create collections based on the subtitle languages available in your library.
|
||||
|
||||
![](../images/subtitle_language.png)
|
||||
|
||||
|
@ -23,10 +23,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: subtitle_language
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: subtitle_language
|
||||
```
|
||||
|
||||
|
@ -70,7 +70,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: subtitle_language
|
||||
template_variables:
|
||||
use_other: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Universe Collections
|
||||
|
||||
The `universe` Default Metadata File is used to create collections based on popular Movie universes (such as the Marvel Cinematic Universe or Wizarding World).
|
||||
The `universe` Default Collection File is used to create collections based on popular Movie universes (such as the Marvel Cinematic Universe or Wizarding World).
|
||||
|
||||
![](../images/universe.png)
|
||||
|
||||
|
@ -36,10 +36,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: universe
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: universe
|
||||
```
|
||||
|
||||
|
@ -85,7 +85,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: universe
|
||||
template_variables:
|
||||
sep_style: salmon #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Year Collections
|
||||
|
||||
The `year` Default Metadata File is used to dynamically create collections based on the years available in your library, sorted by critic rating to create a "best of <year>"
|
||||
The `year` Default Collection File is used to dynamically create collections based on the years available in your library, sorted by critic rating to create a "best of <year>"
|
||||
|
||||
![](../images/year.png)
|
||||
|
||||
|
@ -22,10 +22,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: year
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: year
|
||||
```
|
||||
|
||||
|
@ -65,7 +65,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: year
|
||||
template_variables:
|
||||
sep_style: purple #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Anilist Charts Collections
|
||||
|
||||
The `anilist` Default Metadata File is used to create collections based on Anilist charts.
|
||||
The `anilist` Default Collection File is used to create collections based on Anilist charts.
|
||||
|
||||
![](../images/anilist.png)
|
||||
|
||||
|
@ -24,10 +24,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: anilist
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: anilist
|
||||
```
|
||||
|
||||
|
@ -64,7 +64,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: anilist
|
||||
template_variables:
|
||||
use_season: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Basic Charts Collections
|
||||
|
||||
The `basic` Default Metadata File is used to create collections based on recently released media in your library.
|
||||
The `basic` Default Collection File is used to create collections based on recently released media in your library.
|
||||
|
||||
![](../images/basic.png)
|
||||
|
||||
|
@ -22,10 +22,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic
|
||||
```
|
||||
|
||||
|
@ -61,7 +61,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: basic
|
||||
template_variables:
|
||||
in_the_last_episodes: 14 #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# FlixPatrol Charts Collections
|
||||
|
||||
The `flixpatrol` Default Metadata File is used to create collections based on FlixPatrol Charts.
|
||||
The `flixpatrol` Default Collection File is used to create collections based on FlixPatrol Charts.
|
||||
|
||||
![](../images/flixpatrol.png)
|
||||
|
||||
|
@ -27,10 +27,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: flixpatrol
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: flixpatrol
|
||||
```
|
||||
|
||||
|
@ -71,7 +71,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: flixpatrol
|
||||
template_variables:
|
||||
location: united_states #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# IMDb Charts Collections
|
||||
|
||||
The `imdb` Default Metadata File is used to create collections based on IMDb Charts.
|
||||
The `imdb` Default Collection File is used to create collections based on IMDb Charts.
|
||||
|
||||
![](../images/imdb.png)
|
||||
|
||||
|
@ -25,10 +25,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
```
|
||||
|
||||
|
@ -63,7 +63,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
template_variables:
|
||||
use_lowest: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# MyAnimeList Charts Collections
|
||||
|
||||
The `myanimelist` Default Metadata File is used to create collections based on MyAnimeList Charts.
|
||||
The `myanimelist` Default Collection File is used to create collections based on MyAnimeList Charts.
|
||||
|
||||
![](../images/myanimelist.png)
|
||||
|
||||
|
@ -25,10 +25,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: myanimelist
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: myanimelist
|
||||
```
|
||||
|
||||
|
@ -65,7 +65,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: myanimelist
|
||||
template_variables:
|
||||
use_season: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Other Charts Collections
|
||||
|
||||
The `other_chart` Default Metadata File is used to create collections based on other Charts.
|
||||
The `other_chart` Default Collection File is used to create collections based on other Charts.
|
||||
|
||||
![](../images/chartother.png)
|
||||
|
||||
|
@ -26,10 +26,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: other_chart
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: other_chart
|
||||
```
|
||||
|
||||
|
@ -65,7 +65,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: other_chart
|
||||
template_variables:
|
||||
use_anidb: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Chart Separator Collections
|
||||
|
||||
The `separator_chart` Default Metadata File is used to create a seperator collection for Charts.
|
||||
The `separator_chart` Default Collection File is used to create a seperator collection for Charts.
|
||||
|
||||
![](../images/chartseparator.png)
|
||||
|
||||
|
@ -21,10 +21,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_chart
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_chart
|
||||
```
|
||||
|
||||
|
@ -53,7 +53,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_chart
|
||||
template_variables:
|
||||
sep_style: purple #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Tautulli Charts Collections
|
||||
|
||||
The `tautulli` Default Metadata File is used to create collections based on Tautulli/Plex Charts.
|
||||
The `tautulli` Default Collection File is used to create collections based on Tautulli/Plex Charts.
|
||||
|
||||
![](../images/tautulli.png)
|
||||
|
||||
|
@ -24,10 +24,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tautulli
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tautulli
|
||||
```
|
||||
|
||||
|
@ -66,7 +66,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tautulli
|
||||
template_variables:
|
||||
use_watched: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# TMDb Charts Collections
|
||||
|
||||
The `tmdb` Default Metadata File is used to create collections based on TMDb Charts.
|
||||
The `tmdb` Default Collection File is used to create collections based on TMDb Charts.
|
||||
|
||||
![](../images/tmdb.png)
|
||||
|
||||
|
@ -27,10 +27,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tmdb
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tmdb
|
||||
```
|
||||
|
||||
|
@ -67,7 +67,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: tmdb
|
||||
template_variables:
|
||||
use_trending: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Trakt Charts Collections
|
||||
|
||||
The `trakt` Default Metadata File is used to create collections based on Trakt Charts.
|
||||
The `trakt` Default Collection File is used to create collections based on Trakt Charts.
|
||||
|
||||
![](../images/trakt.png)
|
||||
|
||||
|
@ -28,10 +28,10 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: trakt
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: trakt
|
||||
```
|
||||
|
||||
|
@ -68,7 +68,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: trakt
|
||||
template_variables:
|
||||
use_collected: false #(1)!
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
These files can generally be used on both Movie and Show library-types, or are part of a category of collection (such as Award Shows.)
|
||||
|
||||
These collections are applied by calling the below paths into the `metadata_path` section of your config.yml
|
||||
These collections are applied by calling the below paths into the `collection_files` section of your config.yml
|
||||
|
||||
### Award Collections
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Collection Defaults
|
||||
|
||||
There are many Default Metadata Files built into PMM itself which offer an easy-to-use and customizable set of Collections that the user can achieve without having to worry about creating the files that makes the collections possible.
|
||||
There are many Default Collection Files built into PMM itself which offer an easy-to-use and customizable set of Collections that the user can achieve without having to worry about creating the files that makes the collections possible.
|
||||
|
||||
This is the simplest way to create Collections using Plex Meta Manager.
|
||||
|
||||
|
@ -11,12 +11,12 @@ This is the simplest way to create Collections using Plex Meta Manager.
|
|||
|
||||
## Configurations
|
||||
|
||||
To run a default pmm Metadata file you can simply add it to your `metadata_path` using `pmm` like so:
|
||||
To run a default pmm Metadata file you can simply add it to your `collection_files` using `pmm` like so:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
- pmm: genre
|
||||
```
|
||||
|
@ -43,14 +43,14 @@ libraries:
|
|||
LIBRARYNAME:
|
||||
template_variables:
|
||||
use_separator: false
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
- pmm: genre
|
||||
```
|
||||
|
||||
## Collection Section Order
|
||||
|
||||
All Default Metadata Files have a `collection_section` attribute. These attributes determine the order of the various sections and can be set by [customizing your config](#customizing-configs).
|
||||
All Default Collection Files have a `collection_section` attribute. These attributes determine the order of the various sections and can be set by [customizing your config](#customizing-configs).
|
||||
|
||||
For example: `collection_section: 01` translates to `sort_title: "!<<collection_section>><<pre>><<order_<<key>>>><<sort>>"` and so for `genre` if you have a `Fantasy` collection, plex is going to show `!06_Fantasy`
|
||||
|
||||
|
@ -109,7 +109,7 @@ This example changes the ratings overlay to work on episodes.
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
template_variables:
|
||||
use_popular: false
|
||||
|
@ -130,7 +130,7 @@ For example if you want yearly oscar collections that go back 10 years instead o
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: oscars
|
||||
template_variables:
|
||||
radarr_add_missing: true
|
||||
|
@ -144,7 +144,7 @@ Or maybe you want to change the number of actor collections made using pmm: acto
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: actor
|
||||
template_variables:
|
||||
collection_mode: hide
|
||||
|
@ -158,7 +158,7 @@ Or maybe you want to change the collection sort order of the genre collections u
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: genre
|
||||
template_variables:
|
||||
collection_section: 11
|
||||
|
@ -171,7 +171,7 @@ libraries:
|
|||
LIBRARYNAME:
|
||||
template_variables:
|
||||
use_separator: false
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- ...
|
||||
```
|
||||
|
||||
|
@ -180,7 +180,7 @@ Alternatively it can be turned off individually per git file:
|
|||
```yaml
|
||||
libraries:
|
||||
LIBRARYNAME:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: <file1> # separator is disabled
|
||||
template_variables:
|
||||
use_separator: false
|
||||
|
|
|
@ -11,7 +11,7 @@ libraries:
|
|||
sep_style: purple # use the purple separators globally for this library
|
||||
collection_mode: hide # hide the collections within the "library" tab in Plex.
|
||||
placeholder_imdb_id: tt8579674 # 1917 (2019) placeholder id for the separators, avoids a plex bug.
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_award # An "index card"
|
||||
- pmm: bafta # BAFTA Awards
|
||||
template_variables: # Show collections from current_year-10 onwards.
|
||||
|
@ -46,7 +46,7 @@ libraries:
|
|||
template_variables:
|
||||
originals_only: true # Only create collections for Original Content (i.e. Netflix Originals)
|
||||
- pmm: universe # Marvel Cinematic Universe, Wizarding World, etc.
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false # Set to true if you want to remove overlays
|
||||
# - reapply_overlays: false # If you are doing a lot of testing and changes like me, keep this to true to always reapply overlays - can cause image bloat
|
||||
# - reset_overlays: tmdb # if you want to reset the poster to default poster from tmdb - can cause image bloat
|
||||
|
@ -69,7 +69,7 @@ libraries:
|
|||
sep_style: plum # use the plum separators globally for this library
|
||||
collection_mode: hide # hide the collections within the "library" tab in Plex.
|
||||
placeholder_imdb_id: tt1190634 # The Boys (2019) placeholder id for the separators, avoids a plex bug.
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: separator_award # An "index card"
|
||||
- pmm: bafta # BAFTA Awards
|
||||
template_variables: # Show collections from current_year-10 onwards.
|
||||
|
@ -97,7 +97,7 @@ libraries:
|
|||
- pmm: streaming # Streaming on Disney+, Netflix, etc.
|
||||
template_variables:
|
||||
originals_only: true # Only create collections for Original Content (i.e. Netflix Originals)
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false # Set to true if you want to remove overlays
|
||||
# - reapply_overlays: false # If you are doing a lot of testing and changes like me, keep this to true to always reapply overlays - can cause image bloat
|
||||
# - reset_overlays: tmdb # if you want to reset the poster to default poster from tmdb - can cause image bloat
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# List of Defaults Files
|
||||
|
||||
The below table outlines the available Defaults files which can be called via `metadata_path` (for Collections), `overlay_path` (for Overlays) and `playlist_files` (for Playlists).
|
||||
The below table outlines the available Defaults files which can be called via `collection_files` (for Collections), `overlay_files` (for Overlays) and `playlist_files` (for Playlists).
|
||||
|
||||
{%
|
||||
include-markdown "./collection_list.md"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Defaults Usage Guide
|
||||
|
||||
Plex Meta Manager includes a pre-created set of Metadata Files and Overlay Files which can be found in the "defaults" folder in the root of your Plex Meta Manager installation directory.
|
||||
Plex Meta Manager includes a pre-created set of Collection Files and Overlay Files which can be found in the "defaults" folder in the root of your Plex Meta Manager installation directory.
|
||||
|
||||
These files offer an easy-to-use and customizable set of Collections and Overlays that the user can achieve without having to worry about creating the files that make the collections and overlays possible.
|
||||
|
||||
|
@ -22,15 +22,15 @@ See the [Overlay Defaults](overlays.md) Page for more information on the specifi
|
|||
|
||||
## Configurations
|
||||
|
||||
To run a default pmm Metadata or Overlay file you can simply add it to your `metadata_path` (For Metadata Files) or `overlay_path` (For Overlay Files) using `pmm` like so:
|
||||
To run a default pmm Metadata or Overlay file you can simply add it to your `collection_files` (For Collection Files) or `overlay_files` (For Overlay Files) using `pmm` like so:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: actor
|
||||
- pmm: genre
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: ribbon
|
||||
- pmm: ratings
|
||||
```
|
||||
|
@ -44,7 +44,7 @@ This example changes the ratings overlay to work on episodes.
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: imdb
|
||||
template_variables:
|
||||
use_popular: false
|
||||
|
@ -52,7 +52,7 @@ libraries:
|
|||
visible_library_top: true
|
||||
visible_home_top: true
|
||||
visible_shared_top: true
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: ratings
|
||||
template_variables:
|
||||
builder_level: episode
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# US Content Rating Collections
|
||||
|
||||
The `content_rating_us` Default Metadata File is used to dynamically create collections based on the content ratings available in your library.
|
||||
The `content_rating_us` Default Collection File is used to dynamically create collections based on the content ratings available in your library.
|
||||
|
||||
If you do not use the US-based rating system within Plex, this file will attempt to match the ratings in your library to the respective rating system.
|
||||
|
||||
|
@ -29,7 +29,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_us
|
||||
```
|
||||
|
||||
|
@ -75,7 +75,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: content_rating_us
|
||||
template_variables:
|
||||
sep_style: blue #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Continent Collections
|
||||
|
||||
The `continent` Default Metadata File is used to dynamically create collections based on the countries within your library. The collection aims to be inclusive, with all 230 countries incorporated into seven continents.
|
||||
The `continent` Default Collection File is used to dynamically create collections based on the countries within your library. The collection aims to be inclusive, with all 230 countries incorporated into seven continents.
|
||||
|
||||
**This file has a Show Library [Counterpart](../show/continent.md).**
|
||||
|
||||
|
@ -25,7 +25,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: continent
|
||||
```
|
||||
|
||||
|
@ -78,7 +78,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: continent
|
||||
template_variables:
|
||||
use_other: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Country Collections
|
||||
|
||||
The `country` Default Metadata File is used to dynamically create collections based on the countries available in your library.
|
||||
The `country` Default Collection File is used to dynamically create collections based on the countries available in your library.
|
||||
|
||||
**This file has a Show Library [Counterpart](../show/country.md).**
|
||||
|
||||
|
@ -25,7 +25,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: country
|
||||
```
|
||||
|
||||
|
@ -78,7 +78,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: country
|
||||
template_variables:
|
||||
use_other: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Decade Collections
|
||||
|
||||
The `decade` Default Metadata File is used to dynamically create collections based on the decades available in your library, sorted by critic rating to create a "best of <decade>"
|
||||
The `decade` Default Collection File is used to dynamically create collections based on the decades available in your library, sorted by critic rating to create a "best of <decade>"
|
||||
|
||||
**This file works has a Show Library [Counterpart](../show/decade.md).**
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: decade
|
||||
```
|
||||
|
||||
|
@ -64,7 +64,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: year
|
||||
template_variables:
|
||||
sep_style: purple #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Director Collections
|
||||
|
||||
The `director` Default Metadata File is used to dynamically create collections based on the most popular directors in your library.
|
||||
The `director` Default Collection File is used to dynamically create collections based on the most popular directors in your library.
|
||||
|
||||
## Requirements & Recommendations
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: director
|
||||
```
|
||||
|
||||
|
@ -69,7 +69,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: director
|
||||
template_variables:
|
||||
data:
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Franchise Collections
|
||||
|
||||
The `franchise` Default Metadata File is used to create collections based on popular Movie franchises, and can be used as a replacement to the TMDb Collections that Plex creates out-of-the-box.
|
||||
The `franchise` Default Collection File is used to create collections based on popular Movie franchises, and can be used as a replacement to the TMDb Collections that Plex creates out-of-the-box.
|
||||
|
||||
Unlike most Default Metadata Files, Franchise works by placing collections inline with the main library items if your library allows it. For example, the "Iron Man" franchise collection will appear next to the "Iron Man" movies within your library.
|
||||
Unlike most Default Collection Files, Franchise works by placing collections inline with the main library items if your library allows it. For example, the "Iron Man" franchise collection will appear next to the "Iron Man" movies within your library.
|
||||
|
||||
**This file has a Show Library [Counterpart](../show/franchise.md).**
|
||||
|
||||
|
@ -25,7 +25,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: franchise
|
||||
```
|
||||
|
||||
|
@ -87,7 +87,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: franchise
|
||||
template_variables:
|
||||
build_collection: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Producer Collections
|
||||
|
||||
The `producer` Default Metadata File is used to dynamically create collections based on the most popular producers in your library.
|
||||
The `producer` Default Collection File is used to dynamically create collections based on the most popular producers in your library.
|
||||
|
||||
## Requirements & Recommendations
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: producer
|
||||
```
|
||||
|
||||
|
@ -69,7 +69,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: producer
|
||||
template_variables:
|
||||
data:
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Region Collections
|
||||
|
||||
The `region` Default Metadata File is used to dynamically create collections based on the countries within your library. The collection aims to be inclusive, with all 230 countries incorporated into 39 countries or collections of countries. Some care has been taken to ensure all countries are included, and the groupings won't fit well with everyone's collections. Western and Southern Europe, Oceania, and North America could be useful groupings for those libraries with more of an Asian focus, for instance. Please see the comments in the yml below where a decision point might be seen as controversial. You are welcome to edit this to fit your own audience's needs.
|
||||
The `region` Default Collection File is used to dynamically create collections based on the countries within your library. The collection aims to be inclusive, with all 230 countries incorporated into 39 countries or collections of countries. Some care has been taken to ensure all countries are included, and the groupings won't fit well with everyone's collections. Western and Southern Europe, Oceania, and North America could be useful groupings for those libraries with more of an Asian focus, for instance. Please see the comments in the yml below where a decision point might be seen as controversial. You are welcome to edit this to fit your own audience's needs.
|
||||
|
||||
**This file has a Show Library [Counterpart](../show/region.md).**
|
||||
|
||||
|
@ -25,7 +25,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: region
|
||||
```
|
||||
|
||||
|
@ -78,7 +78,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: region
|
||||
template_variables:
|
||||
use_other: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Seasonal Collections
|
||||
|
||||
The `seasonal` Default Metadata File is used to dynamically create seasonal collections based on holidays .
|
||||
The `seasonal` Default Collection File is used to dynamically create seasonal collections based on holidays .
|
||||
|
||||
![](../images/seasonal.png)
|
||||
|
||||
|
@ -40,7 +40,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: seasonal
|
||||
```
|
||||
|
||||
|
@ -93,7 +93,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: seasonal
|
||||
template_variables:
|
||||
use_independence: false #(1)!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Writer Collections
|
||||
|
||||
The `writer` Default Metadata File is used to dynamically create collections based on the most popular writers in your library.
|
||||
The `writer` Default Collection File is used to dynamically create collections based on the most popular writers in your library.
|
||||
|
||||
## Requirements & Recommendations
|
||||
|
||||
|
@ -24,7 +24,7 @@ The below YAML in your config.yml will create the collections:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: writer
|
||||
```
|
||||
|
||||
|
@ -72,7 +72,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
metadata_path:
|
||||
collection_files:
|
||||
- pmm: writer
|
||||
template_variables:
|
||||
data:
|
||||
|
|
|
@ -6,7 +6,7 @@ It should be noted that when an overlay has ❗ for a season or episode, it
|
|||
|
||||
In the scenario where there is missing data such as age ratings for episodes, then generally the highest-level data available will be applied at the lower level (i.e. a Show's CommonSense age rating would apply to all episodes).
|
||||
|
||||
These overlays are applied by calling the below paths into the `overlay_path` [section](../config/libraries.md#overlay-path) of your config.yml
|
||||
These overlays are applied by calling the below paths into the `overlay_files` [section](../config/libraries.md#overlay-path) of your config.yml
|
||||
|
||||
### Chart Overlays
|
||||
|
||||
|
|
|
@ -10,12 +10,12 @@ This is the simplest way to create Overlays using Plex Meta Manager.
|
|||
|
||||
## Configurations
|
||||
|
||||
To run a default pmm Overlay file you can simply add it to your `overlay_path` using `pmm` like so:
|
||||
To run a default pmm Overlay file you can simply add it to your `overlay_files` using `pmm` like so:
|
||||
|
||||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: ribbon
|
||||
- pmm: ratings
|
||||
```
|
||||
|
@ -33,7 +33,7 @@ libraries:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- pmm: resolution # 1, 4
|
||||
- pmm: audio_codec # 2
|
||||
|
@ -78,7 +78,7 @@ libraries:
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- pmm: resolution # 1
|
||||
- pmm: audio_codec # 2
|
||||
|
@ -120,7 +120,7 @@ libraries:
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- pmm: resolution # 1
|
||||
template_variables:
|
||||
|
@ -145,7 +145,7 @@ libraries:
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- remove_overlays: false
|
||||
- pmm: resolution # 1
|
||||
template_variables:
|
||||
|
@ -204,7 +204,7 @@ To be able to insert the ratings you want, Plex Meta Manager operations need to
|
|||
|
||||
![](images/ratings_operations.png)
|
||||
|
||||
Finally, to show the ratings on the poster, the following was added to the `overlay_path` section in the `config.yml` file to post Rotten Tomatoes Critics Ratings in (`#1`), IMDb ratings in (`#2`), and TMDb ratings in (`#3`)
|
||||
Finally, to show the ratings on the poster, the following was added to the `overlay_files` section in the `config.yml` file to post Rotten Tomatoes Critics Ratings in (`#1`), IMDb ratings in (`#2`), and TMDb ratings in (`#3`)
|
||||
|
||||
![](images/ratings_overlay_path.png)
|
||||
|
||||
|
@ -217,7 +217,7 @@ This example changes the ratings overlay to work on episodes.
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: ratings
|
||||
template_variables:
|
||||
builder_level: episode
|
||||
|
|
|
@ -28,10 +28,10 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: aspect
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: aspect
|
||||
- pmm: aspect
|
||||
template_variables:
|
||||
|
@ -73,13 +73,13 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: aspect
|
||||
template_variables:
|
||||
text_1.33: "4:9"
|
||||
text_1.77: "16:9"
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: aspect
|
||||
template_variables:
|
||||
text_1.33: "4:9"
|
||||
|
|
|
@ -44,10 +44,10 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: audio_codec
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: audio_codec
|
||||
- pmm: audio_codec
|
||||
template_variables:
|
||||
|
@ -89,7 +89,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: audio_codec
|
||||
template_variables:
|
||||
use_opus: false
|
||||
|
|
|
@ -41,10 +41,10 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: commonsense
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: commonsense
|
||||
- pmm: commonsense
|
||||
template_variables:
|
||||
|
@ -87,7 +87,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: commonsense
|
||||
template_variables:
|
||||
pre_text: "CS"
|
||||
|
|
|
@ -30,10 +30,10 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_uk
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_uk
|
||||
- pmm: content_rating_uk
|
||||
template_variables:
|
||||
|
@ -77,7 +77,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_uk
|
||||
template_variables:
|
||||
color: false
|
||||
|
|
|
@ -28,7 +28,7 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_us_movie
|
||||
```
|
||||
|
||||
|
@ -62,7 +62,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_us_movie
|
||||
template_variables:
|
||||
color: false
|
||||
|
|
|
@ -28,7 +28,7 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_us_show
|
||||
- pmm: content_rating_us_show
|
||||
template_variables:
|
||||
|
@ -68,7 +68,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: content_rating_us_show
|
||||
template_variables:
|
||||
color: false
|
||||
|
|
|
@ -15,10 +15,10 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: direct_play
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: direct_play
|
||||
```
|
||||
|
||||
|
@ -53,7 +53,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
Movies:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: direct_play
|
||||
template_variables:
|
||||
builder_level: episode
|
||||
|
|
|
@ -15,7 +15,7 @@ The below YAML in your config.yml will create the overlays:
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: episode_info
|
||||
```
|
||||
|
||||
|
@ -49,7 +49,7 @@ The below is an example config.yml extract with some Template Variables added in
|
|||
```yaml
|
||||
libraries:
|
||||
TV Shows:
|
||||
overlay_path:
|
||||
overlay_files:
|
||||
- pmm: episode_info
|
||||
template_variables:
|
||||
font_color: "#FFFFFF99"
|
||||
|
|