26 KiB
Default Metadata & Overlays Files
There is a default set of Metadata and Overlay Files located in the PMM Folder in the Plex Meta Manager Configs Repository.
The intention of this directory is to offer easy to use and slightly customizable (using template_variables
) Metadata and Overlay Files for a general user who wants nice collections but doesn't want to learn all of Plex Meta Manager.
All posters defined in the Metadata Files are stored in the Plex Meta Manager Images Repository and all Overlay images are in the Configs Repository at PMM/overlays/images, which allows for changes to be made in one central location that will deploy to all users of this setup when they next run PMM.
Credits to Bullmoose20 and Yozora for helping drive this entire Default Set of Configs through the concept, design and implementation.
Special thanks to Magic815 for the overlay image inspiration and base template.
Configurations
To run a file in git you can simply add it to your metadata_path
(For Metadata Files) or overlay_path
(For Overlay Files) using git
like so:
libraries:
Movies:
metadata_path:
- git: PMM/actor
- git: PMM/genre
overlay_path:
- remove_overlays: false
- git: PMM/overlays/imdb_top_250
- git: PMM/overlays/ratings
Overlays
The default set of overlays are a combination of Positional Overlays and Text Overlays.
Example Poster Overlays
Click to expand sample config.yml Movies overlays section:
libraries:
Movies:
overlay_path:
- remove_overlays: false
- reapply_overlay: true
- git: PMM/overlays/resolution # 1
- git: PMM/overlays/audio_codec # 2
- git: PMM/overlays/special_release # 3
- git: PMM/overlays/ratings # 4,5,6
template_variables:
rating1: user # 4 as this is user and mass_user_rating_update: mdb_tomatoes
rating1_image: rt_tomato # 4 as this is user and mass_user_rating_update: mdb_tomatoes
rating1_font: config/metadata/overlays/fonts/Adlib.ttf # 4 local font accessible to PMM
rating1_font_size: 63 # 4 adjusted font size to fit rating
rating2: critic # 5 as this is critic and mass_critic_rating_update: imdb
rating2_image: imdb # 5 as this is critic and mass_critic_rating_update: imdb
rating2_font: config/metadata/overlays/fonts/Impact.ttf # 5 local font accessible to PMM
rating2_font_size: 70 # 5 adjusted font size to fit rating
rating3: audience # 6 as this is audience and mass_audience_rating_update: tmdb
rating3_image: tmdb # 6 as this is audience and mass_audience_rating_update: tmdb
rating3_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 6 local font accessible to PMM
rating3_font_size: 70 # 6 adjusted font size to fit rating
horizontal_position: right # the set of ratings is on the right of the poster
- git: PMM/overlays/streaming # 7
- git: PMM/overlays/video_format # 8
- git: PMM/overlays/audio_language # 9
- git: PMM/overlays/oscars # 10
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 40 # Weight of 40 applies if more than 1 sash is applied in bottom right
- git: PMM/overlays/imdb_top_250 # 11
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 30 # Weight of 30 applies if more than 1 sash is applied in bottom right
- git: PMM/overlays/rt_cert_fresh # 12
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 20 # Weight of 20 applies if more than 1 sash is applied in bottom right
- git: PMM/overlays/mc_must_see # NOT SHOWN, however would apply the "MetaCritic Must See" sash in the bottom right
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 10 # Weight of 10 applies if more than 1 sash is applied in bottom right
operations:
mass_user_rating_update: mdb_tomatoes # 4 This operation will update the user rating in plex with Rotten Tomatoes ratings information
mass_critic_rating_update: imdb # 5 This operation will update the critic rating in plex with IMDb ratings information
mass_audience_rating_update: tmdb # 6 This operation will update the audience rating in plex with TMDb ratings information
Example TV Shows - Show Overlays
Click to expand sample config.yml TV Shows overlays section for the Show Poster:
libraries:
TV Shows:
overlay_path:
- remove_overlays: false
- reapply_overlay: true
- git: PMM/overlays/resolution # 1
- git: PMM/overlays/audio_codec # 2
- git: PMM/overlays/ratings # 3,4,5
template_variables:
rating1: user # 3 as this is user and mass_user_rating_update: mdb_tomatoes
rating1_image: rt_tomato # 3 as this is user and mass_user_rating_update: mdb_tomatoes
rating1_font: config/metadata/overlays/fonts/Adlib.ttf # 3 local font accessible to PMM
rating1_font_size: 63 # 3 adjusted font size to fit rating
rating2: critic # 4 as this is critic and mass_critic_rating_update: imdb
rating2_image: imdb # 4 as this is critic and mass_critic_rating_update: imdb
rating2_font: config/metadata/overlays/fonts/Impact.ttf # 4 local font accessible to PMM
rating2_font_size: 70 # 4 adjusted font size to fit rating
rating3: audience # 5 as this is audience and mass_audience_rating_update: tmdb
rating3_image: tmdb # 5 as this is audience and mass_audience_rating_update: tmdb
rating3_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 5 local font accessible to PMM
rating3_font_size: 70 # 5 adjusted font size to fit rating
horizontal_position: right # the set of ratings is on the right of the poster
- git: PMM/overlays/streaming # 6
- git: PMM/overlays/video_format # 7
- git: PMM/overlays/imdb_top_250 # 8
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 30 # Weight of 30 applies if more than 1 sash is applied in bottom right
- git: PMM/overlays/rt_cert_fresh # 9
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 20 # Weight of 20 applies if more than 1 sash is applied in bottom right
- git: PMM/overlays/mc_must_see # NOT SHOWN, however would apply the "MetaCritic Must See" sash in the bottom right
template_variables: # Bottom right sash is used by more than one overlay so a weight for priority is applied
weight: 10 # Weight of 10 applies if more than 1 sash is applied in bottom right
operations:
mass_user_rating_update: mdb_tomatoes # 3 This operation will update the user rating in plex with Rotten Tomatoes ratings information
mass_critic_rating_update: imdb # 4 This operation will update the critic rating in plex with IMDb ratings information
mass_audience_rating_update: tmdb # 5 This operation will update the audience rating in plex with TMDb ratings information
Example TV Shows - Season Overlays
Click to expand sample config.yml TV Shows overlays section for the Season Poster:
libraries:
TV Shows:
overlay_path:
- remove_overlays: false
- reapply_overlay: true
- git: PMM/overlays/resolution # 1
template_variables:
overlay_level: season
- git: PMM/overlays/audio_codec # 2
template_variables:
overlay_level: season
- git: PMM/overlays/video_format # 3
template_variables:
overlay_level: season
Example TV Shows - Episode Overlays
Click to expand sample config.yml TV Shows overlays section for the Episode Poster:
libraries:
TV Shows:
overlay_path:
- remove_overlays: false
- reapply_overlay: true
- git: PMM/overlays/resolution # 1
template_variables:
overlay_level: episode
- git: PMM/overlays/audio_codec # 2
template_variables:
overlay_level: episode
- git: PMM/overlays/ratings # 3,4
template_variables:
rating1: critic # 3 as this is critic and mass_critic_rating_update: imdb
rating1_image: imdb # 3 as this is critic and mass_critic_rating_update: imdb
rating1_font: config/metadata/overlays/fonts/Impact.ttf # 3 local font accessible to PMM
rating1_font_size: 70 # 3 adjusted font size to fit rating
rating2: audience # 4 as this is audience and mass_audience_rating_update: tmdb
rating2_image: tmdb # 4 as this is audience and mass_audience_rating_update: tmdb
rating2_font: config/metadata/overlays/fonts/Avenir_95_Black.ttf # 4 local font accessible to PMM
rating2_font_size: 70 # 4 adjusted font size to fit rating
horizontal_position: right # the set of ratings is on the right of the poster
overlay_level: episode
- git: PMM/overlays/video_format # 5
template_variables:
overlay_level: episode
- git: PMM/overlays/episode_info # 6
template_variables:
overlay_level: episode
- git: PMM/overlays/runtimes # 7
template_variables:
overlay_level: episode
operations:
mass_episode_critic_rating_update: imdb # 3 This operation will update the episodes critic rating in plex with IMDb ratings information
mass_episode_audience_rating_update: tmdb # 4 This operation will update the episodes audience rating in plex with TMDb ratings information
Separators
By default, most metadata files use separators to denote different sections of collection like actor collections vs studio collections.
- Can be turned off by customizing your config
Collection Section Order
Almost every default metadata file has a collection_section
attribute. These attributes determine the order of the various sections and can be set by customizing your config.
For example: collection_section:01
translates to sort_title: "!<<collection_section>><<pre>><<order_<<key>>>><<sort>>"
and so for genre.yml
if you have a Fantasy
collection, plex is going to show !06_Fantasy
This is the default PMM collection ordering:
Collection | Order |
---|---|
PMM/movie/seasonal.yml |
collection_section: 00 |
PMM/chart/anilist.yml |
collection_section: 01 |
PMM/chart/basic.yml |
collection_section: 01 |
PMM/chart/imdb.yml |
collection_section: 01 |
PMM/chart/myanimelist.yml |
collection_section: 01 |
PMM/chart/other.yml |
collection_section: 01 |
PMM/chart/tautulli.yml |
collection_section: 01 |
PMM/chart/tmdb.yml |
collection_section: 01 |
PMM/chart/trakt.yml |
collection_section: 01 |
PMM/movie/universe.yml |
collection_section: 02 |
PMM/streaming.yml |
collection_section: 03 |
PMM/show/network.yml |
collection_section: 04 |
PMM/genre.yml |
collection_section: 06 |
PMM/studio.yml |
collection_section: 07 |
PMM/movie/country.yml |
collection_section: 09 |
PMM/show/country.yml |
collection_section: 09 |
PMM/audio_language.yml |
collection_section: 10 |
PMM/subtitle_language.yml |
collection_section: 11 |
PMM/movie/decade.yml |
collection_section: 12 |
PMM/show/decade.yml |
collection_section: 12 |
PMM/year.yml |
collection_section: 13 |
PMM/content_rating_uk.yml |
collection_section: 14 |
PMM/movie/content_rating_us.yml |
collection_section: 14 |
PMM/show/content_rating_us.yml |
collection_section: 14 |
PMM/resolution.yml |
collection_section: 15 |
PMM/resolution_standards.yml |
collection_section: 15 |
PMM/award/bafta.yml |
collection_section: 16 |
PMM/award/cannes.yml |
collection_section: 16 |
PMM/award/choice.yml |
collection_section: 16 |
PMM/award/emmy.yml |
collection_section: 16 |
PMM/award/golden.yml |
collection_section: 16 |
PMM/award/oscars.yml |
collection_section: 16 |
PMM/award/other.yml |
collection_section: 16 |
PMM/award/separator.yml |
collection_section: 16 |
PMM/award/spirit.yml |
collection_section: 16 |
PMM/award/sundance.yml |
collection_section: 16 |
PMM/actor.yml |
collection_section: 17 |
PMM/movie/director.yml |
collection_section: 18 |
PMM/movie/producer.yml |
collection_section: 19 |
PMM/movie/writer.yml |
collection_section: 20 |
Customizing Configs
Configs can be customized using the template_variables
attribute when calling the file. These template_variables
will be given to every template call in the file which allows them to affect how that file runs.
This example changes the ratings overlay to work on episodes.
libraries:
TV Shows:
overlay_path:
- git: PMM/overlays/ratings
template_variables:
overlay_level: episode
Each file has a comment block at the top showing the available template_variables
for each file. For example the PMM/genre
has this:
#############################################################
# Dynamic Genre Collections #
# Created by Yozora, Bullmoose20, & Sohjiro #
#############################################################
# Call this from your config.yml (Movie or Show) #
# If nothing is specified these are the defaults #
# #
# metadata_path: #
# - git: PMM/genre #
# template_variables: #
# # Turn the separator collection on/off #
# use_separator: true #
# # Sets how the collection is sorted #
# sort_by: release.desc #
# # Sets the collection mode of the collection #
# collection_mode: #
# # Sets the value at the start of the sort title #
# collection_section: "06" #
#############################################################
Each of these when passed will change how the collection runs slightly.
use_separator
Turn the separator collection on/offsort_by
Sets how the collection is sortedcollection_mode
Sets the collection mode of the collectioncollection_section
Sets the value at the start of the sort title
In addition to the defined template_variables
each file in the PMM Folder has access to the radarr_add_missing
and sonarr_add_missing
template variables and for dynamic collections most attributes can be passed as template variables
For example if you want yearly oscar collections that go back 10 years instead of 5 all of which gets sent to radarr use the data
and radarr_add_missing
template variables.
libraries:
Movies:
metadata_path:
- git: PMM/award/oscars
template_variables:
radarr_add_missing: true
data:
starting: current_year-10
ending: current_year
Or maybe you want to change the number of actor collections made using PMM/actor.
libraries:
Movies:
overlay_path:
- git: PMM/actor
template_variables:
collection_mode: hide
data:
depth: 5
limit: 50
Or maybe you want to change the collection sort order of the genre collections using PMM/genre.
libraries:
Movies:
metadata_path:
- git: PMM/genre
template_variables:
collection_section: 11
Errors
If there are collections being made that have configuration errors or missing posters please either bring it up in our Discord or raise an Issue on the Configs Repo.
Example Configuration File
Click to expand sample config.yml file:
libraries:
Movies:
metadata_path:
- git: PMM/award/bafta
- git: PMM/award/cannes
- git: PMM/award/choice
- git: PMM/award/golden
- git: PMM/award/oscars
- git: PMM/award/other
- git: PMM/award/spirit
- git: PMM/award/sundance
- git: PMM/chart/anilist
- git: PMM/chart/basic
- git: PMM/chart/imdb
- git: PMM/chart/myanimelist
- git: PMM/chart/other
- git: PMM/chart/tautulli
- git: PMM/chart/tmdb
- git: PMM/chart/trakt
- git: PMM/actor
- git: PMM/audio_language
- git: PMM/movie/content_rating_us # Choose content_rating_uk or content_rating_us
- git: PMM/genre
- git: PMM/resolution_standards # Choose resolution_standards or resolution
- git: PMM/streaming
- git: PMM/studio
- git: PMM/subtitle_language
- git: PMM/year
- git: PMM/movie/country
- git: PMM/movie/decade
- git: PMM/movie/director
- git: PMM/movie/franchise
- git: PMM/movie/universe
- git: PMM/movie/producer
- git: PMM/movie/seasonal
- git: PMM/movie/writer
overlay_path:
- remove_overlays: false
- git: PMM/overlays/audio_codec
- git: PMM/overlays/audio_language
- git: PMM/overlays/direct_play
- git: PMM/overlays/imdb_top_250
- git: PMM/overlays/mc_must_see
- git: PMM/overlays/rt_cert_fresh
- git: PMM/overlays/ratings
template_variables:
rating1: critic
rating1_image: rt_tomato
- git: PMM/overlays/resolution
- git: PMM/overlays/special_release
- git: PMM/overlays/streaming
- git: PMM/overlays/video_format
TV Shows:
metadata_path:
- git: PMM/award/choice
- git: PMM/award/golden
- git: PMM/award/emmy
- git: PMM/chart/anilist
- git: PMM/chart/basic
- git: PMM/chart/imdb
- git: PMM/chart/myanimelist
- git: PMM/chart/other
- git: PMM/chart/tautulli
- git: PMM/chart/tmdb
- git: PMM/chart/trakt
- git: PMM/actor
- git: PMM/audio_language
- git: PMM/show/content_rating_us # Choose content_rating_uk or content_rating_us
- git: PMM/genre
- git: PMM/resolution_standards # Choose resolution_standards or resolution
- git: PMM/streaming
- git: PMM/studio
- git: PMM/subtitle_language
- git: PMM/year
- git: PMM/show/country
- git: PMM/show/decade
- git: PMM/show/network
overlay_path:
- remove_overlays: false
- git: PMM/overlays/audio_codec
- git: PMM/overlays/audio_codec
template_variables:
overlay_level: episode
- git: PMM/overlays/audio_codec
template_variables:
overlay_level: season
- git: PMM/overlays/audio_language
- git: PMM/overlays/audio_language
template_variables:
overlay_level: episode
- git: PMM/overlays/audio_language
template_variables:
overlay_level: season
- git: PMM/overlays/direct_play
- git: PMM/overlays/direct_play
template_variables:
overlay_level: episode
- git: PMM/overlays/direct_play
template_variables:
overlay_level: season
- git: PMM/overlays/episode_info
template_variables:
overlay_level: episode
- git: PMM/overlays/imdb_top_250
- git: PMM/overlays/imdb_top_250
template_variables:
overlay_level: episode
- git: PMM/overlays/imdb_top_250
template_variables:
overlay_level: season
- git: PMM/overlays/mc_must_see
- git: PMM/overlays/mc_must_see
template_variables:
overlay_level: episode
- git: PMM/overlays/mc_must_see
template_variables:
overlay_level: season
- git: PMM/overlays/rt_cert_fresh
- git: PMM/overlays/rt_cert_fresh
template_variables:
overlay_level: episode
- git: PMM/overlays/rt_cert_fresh
template_variables:
overlay_level: season
- git: PMM/overlays/ratings
template_variables:
rating2: audience
rating2_image: imdb
- git: PMM/overlays/ratings
template_variables:
rating2: audience
rating2_image: imdb
overlay_level: episode
- git: PMM/overlays/resolution
- git: PMM/overlays/resolution
template_variables:
overlay_level: episode
- git: PMM/overlays/resolution
template_variables:
overlay_level: season
- git: PMM/overlays/runtimes
template_variables:
overlay_level: episode
- git: PMM/overlays/special_release
- git: PMM/overlays/special_release
template_variables:
overlay_level: episode
- git: PMM/overlays/special_release
template_variables:
overlay_level: season
- git: PMM/overlays/streaming
- git: PMM/overlays/streaming
template_variables:
overlay_level: episode
- git: PMM/overlays/streaming
template_variables:
overlay_level: season
- git: PMM/overlays/video_format
- git: PMM/overlays/video_format
template_variables:
overlay_level: episode
- git: PMM/overlays/video_format
template_variables:
overlay_level: season
playlist_files:
- git: PMM/playlist