first release of config with information about PPM integration (#633)

* updates to schema (flixpatrol is back in limited fashion) and new version of status made me move some other overlays down a little to accommodate

* added a movie metadata_file

* updated for 1.20

* updates for 1.20

* updated because some items now require nightly6

* update README.md

* add separator_franchise

* in preparation for the content_rating_au as a default

* minor update

* minor tweaks

* remove flizpatrol, update mass_*update section, add more seasonal

* additional fixes from ruamel checker

* new config to get ready for PlexPosterMaker

* first release of config with information about PPM integration

* added my docker-compose.yml for Unraid
pull/634/head
bullmoose20 2 months ago committed by GitHub
parent cbf66963ed
commit 126afbd84f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -2,7 +2,7 @@
## Basics
I run PMM nightly (not lsio image) and Plex(hotio image) on Unraid 6.12.6. At the top of my config.yml file I will usually specify the version that this config.yml file works with.
<br>
## Instructions
Take what you need from my config.yml. I run everything stock from the github default PMM and tweak from within my config.yml to "make it my own". If you perform a straight copy, search for `(redacted)` as you will need to replace that with your own information. Search for `db_cache` which is for Plex and now available to set via PMM. I use 2048 MB (2GB) as my system has 168 GB of RAM. You will want to improve it from the default 40 MB that Plex sets. Maybe a good starting point if you have enough RAM is 1024 MB which is 1GB.
@ -15,58 +15,29 @@ Unzip the fonts into `config/metadata/overlays/fonts/` to use this config withou
You can put the fonts elsewhere, but if you choose to do that, you will need to adjust the ratings section (rating1_font:, rating2_font:, rating3_font:) of the overlays within the config.yml file to point to the location you chose.
I also prefer to have a copy of the local assets so that if I need to recover to the original posters, they are there. I use grab-all-posters.py from chazlarson's repo to help with that: https://github.com/chazlarson/Media-Scripts/tree/main/Plex-Meta-Manager and the following in my .env:
```
ADD_SOURCE_EXIF_COMMENT=0 # If set to 1, add the source URL to the image EXIF tags
CURRENT_POSTER_DIR=current_posters # put downloaded current posters and artwork here
DEFAULT_YEARS_BACK=20 # If there is no "last run date" stored, go this many years back [integer; negative values will be made positive]
DELAY=1
FOLDERS_ONLY=0 # If set to 1, just build out the folder hierarchy; no image downloading
GRAB_BACKGROUNDS=1 # If set to 1, backgrounds are retrieved [into a folder `backgrounds`]
GRAB_EPISODES=1 # grab episode posters [requires GRAB_SEASONS]
GRAB_SEASONS=1 # grab season posters
INCLUDE_COLLECTION_ARTWORK=0 # If set to 1, collection posters are retrieved
KEEP_JUNK=0 # If set to 1, keep files that script would normally delete [incorrect filetypes, mainly]
LIBRARY_NAMES=Movies,TV Shows
ONLY_COLLECTION_ARTWORK=0 # If set to 1, ONLY collection posters are retrieved
#ONLY_THESE_COLLECTIONS=Bing|Bang|Boing # only grab artwork for these collections and items in them; if empty, no filter
POSTER_CONSOLIDATE=0 # if set to 0, posters are separated into folders by library
POSTER_DEPTH=1 # grab this many posters [0 grabs all]
POSTER_DIR=extracted_posters # put downloaded posters here
POSTER_DOWNLOAD=1 # if set to 0, generate a script rather than downloading
RESET_LIBRARIES=Bing,Bang,Boing # reset "last time" count to 0 for these libraries
SUPERCHAT=1
ONLY_CURRENT=0
ASSET_DIR=assets
USE_ASSET_NAMING=1
USE_ASSET_FOLDERS=1
ASSETS_BY_LIBRARIES=1
FIND_OVERLAID_IMAGES=1
RETAIN_PMM_OVERLAID_IMAGES=0 # keep images that have the PMM overlay EXIF tag
RETAIN_TCM_OVERLAID_IMAGES=0 # keep images that have the TCM overlay EXIF tag
THREADED_DOWNLOADS=0
TMDB_KEY=(redacted)
TRACK_COMPLETION=0 # If set to 1, movies/shows are tracked as complete by rating id
TRACK_IMAGE_SOURCES=1 # If set to 1, keep a file containing file names and source URLs
TRACK_URLS=1 # If set to 1, URLS are tracked and won't be downloaded twice
USE_ASSET_SUBFOLDERS=0 # If set to 1, create asset folders in subfolders ["Collections", "Other", or [0-9, A-Z]] ]
NO_FS_WARNING=1
PLEXAPI_PLEXAPI_TIMEOUT='360'
PLEXAPI_LOG_BACKUP_COUNT='3'
PLEXAPI_LOG_FORMAT='%(asctime)s %(module)12s:%(lineno)-4s %(levelname)-9s %(message)s'
PLEXAPI_LOG_LEVEL='INFO'
PLEXAPI_LOG_PATH='plexapi.log'
PLEXAPI_LOG_ROTATE_BYTES='512000'
PLEXAPI_LOG_SHOW_SECRETS='false'
PLEXAPI_AUTH_SERVER_BASEURL='http://192.168.2.242:32400'
PLEXAPI_AUTH_SERVER_TOKEN='(redacted)'
```
## Assets
I also prefer to have a copy of the local assets so that if I need to recover to the original posters, they are there. I use PlexPosterMaker.ps1 from FSCorrupt's repo to help with that: https://github.com/fscorrupt/Plex-Poster-Maker . I also use PMM's assets in a folder structure as described in the wiki here: https://metamanager.wiki/en/latest/pmm/guides/assets/
Essentially, I prefer `tmdb` as a source and textless images all around with a fallback to English and then German(`["xx", "en", "de"]`). Then I apply a gradient of my choice (`bottom-up-fade.png` & `bottom-up-fade-background.png`), and font of my choice (`Comfortaa-Medium.ttf`) which happens to match the PMM defaults for Collections. The secrets to all of this are found in the `bullmoose20config.json` file found in the ppm subdirectory along with the font and the gradient files.
After PPM applies my settings Movie example
![](./ppm/images/movie_example_ppm.png)
After PMM applies overlays to Movie example
![](./ppm/images/movie_example_ppm_pmm.png)
After PPM applies my settings Show example
![](./ppm/images/shows_example_ppm.png)
After PMM applies overlays to Show example
![](./ppm/images/shows_example_ppm_pmm1.png)
![](./ppm/images/shows_example_ppm_pmm2.png)
![](./ppm/images/shows_example_ppm_pmm3.png)
<br>

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

@ -0,0 +1,92 @@
{
"ApiPart":{
"tvdbapi": "tvdb api key - free",
"tmdbtoken": "This is the super long token from tmdb - free",
"FanartTvAPIKey": "fanart.tv token - free",
"PlexToken": "plex token - free",
"FavProvider": "tmdb",
"PreferedLanguageOrder": ["xx", "en", "de"]
},
"PlexPart":{
"LibstoExclude": ["", "", "TestMovies", "TestTV Shows", "Other Videos", "Music", "Photos", "Test Videos", "Playlists" ],
"PlexUrl": "http://192.168.2.242:32400"
},
"Notification":{
"SendNotification":"true",
"AppriseUrl": "discord://{WebhookID}/{WebhookToken}/",
"Discord": "https://discord.com/api/webhooks/add-your-discord-webhook-here"
},
"PrerequisitePart":{
"AssetPath": "./assets",
"magickinstalllocation": "C:\\Program Files\\ImageMagick-7.1.1-Q16-HDRI",
"maxLogs": "5",
"font": "Comfortaa-Medium.ttf",
"backgroundfont": "Comfortaa-Medium.ttf",
"titlecardfont": "Comfortaa-Medium.ttf",
"overlayfile": "bottom-up-fade.png",
"backgroundoverlayfile": "bottom-up-fade-background.png",
"titlecardoverlayfile": "bottom-up-fade-background.png",
"LibraryFolders": "true",
"SeasonPosters": "true",
"BackgroundPosters": "true",
"TitleCards": "true"
},
"OverlayPart":{
"ImageProcessing": "true",
"outputQuality": "100%"
},
"PosterOverlayPart":{
"fontAllCaps": "true",
"AddBorder": "false",
"AddText": "true",
"AddOverlay": "true",
"fontcolor": "white",
"bordercolor": "white",
"minPointSize": "95",
"maxPointSize": "250",
"borderwidth": "30",
"MaxWidth": "1200",
"MaxHeight": "485",
"text_offset": "+300"
},
"BackgroundOverlayPart":{
"fontAllCaps": "true",
"AddBorder": "false",
"AddText": "false",
"AddOverlay": "false",
"fontcolor": "white",
"bordercolor": "white",
"minPointSize": "95",
"maxPointSize": "250",
"borderwidth": "30",
"MaxWidth": "3000",
"MaxHeight": "500",
"text_offset": "+200"
},
"TitleCardOverlayPart":{
"AddOverlay": "true",
"AddBorder": "false",
"bordercolor": "white",
"borderwidth": "30"
},
"TitleCardTitleTextPart":{
"fontAllCaps": "true",
"AddEPTitleText": "true",
"fontcolor": "white",
"minPointSize": "95",
"maxPointSize": "250",
"MaxWidth": "2500",
"MaxHeight": "300",
"text_offset": "+290"
},
"TitleCardEPTextPart":{
"fontAllCaps": "true",
"AddEPText": "true",
"fontcolor": "white",
"minPointSize": "80",
"maxPointSize": "120",
"MaxWidth": "1600",
"MaxHeight": "150",
"text_offset": "+140"
}
}

@ -0,0 +1,20 @@
services:
ppm:
hostname: "ppm"
container_name: "ppm"
environment:
- "PGID=100"
- "PUID=99"
- "TZ=America/New_York"
- "UMASK=002"
- "TERM=xterm"
- "RUN_TIME=10:30,19:30"
image: "ghcr.io/fscorrupt/docker-ppm:latest"
restart: "unless-stopped"
networks:
- "ppm"
volumes:
- "/mnt/user/appdata/ppm:/config:rw"
networks:
ppm:
driver: bridge

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 866 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Loading…
Cancel
Save