Skip to content

Configuring the TitleCardMaker

Collin Heist edited this page Nov 26, 2022 · 46 revisions

Configuring the TitleCardMaker (preferences.yml)

Controlling how the TitleCardMaker interfaces with your system is done via a single preferences YAML file, whose options are detailed below. By default, the Maker looks for a file called preferences.yml alongside main.py.

Name YAML Attribute Required
Options options ✔️
Archive archive
Plex plex
Sonarr sonarr
TMDb tmdb
Tautulli tautulli
ImageMagick imagemagick 1

1 Not required only if your host OS supports ImageMagick; some OS's do not (i.e. Unraid)

Simple Example

Below is a simple example of the most common options needed by most users. This can be copied and used as a good starting place for your preferences.yml file. See the links above for more information about each section.

options:
  source: ./source/
  series:
  - ./yaml/sonarr_sync.yml
  filename_format: "{full_name} - S{season:02}E{episode:02}"
  season_folder_format: "Season {season:02}"
  sync_specials: false
  
plex:
  url: http://192.168.0.1:32400/         # Your local plex IP address
  token: pzdygxzJJdszc-t_Pw_zfZ          # Your Plex token

sonarr:
  url: http://192.168.0.1:8989/api/v3/   # Your Sonarr IP address
  api_key: d91238d71938581edfaccd        # Your Sonarr API key
  sync:
  - file: ./yaml/sonarr_sync.yml
    monitored_only: true
    plex_libraries:                      # Your library paths and names
      /media/tv: TV
      /media/anime: Anime

tmdb:
  api_key: d91238d71938581edfaccd        # Your TMDb API key here

Complete Example

Below is a complete example of a valid (except for the URL/API keys) preference file. You will need to modify this to match your own configuration. See the links above for more information about each section.

NOTE: I really recommend you modify this. A majority of these options are not relevant to most users (especially the archive section), and can cause undesired execution.

options:
  source: ./source/
  series:
  - ./yaml/tv.yml
  - ./yaml/anime.yml
  execution_mode: serial
  card_type: standard
  card_extension: jpg
  filename_format: "{full_name} - S{season:02}E{episode:02}"
  image_source_priority: tmdb, plex
  episode_data_source: tmdb
  season_folder_format: "Season {season:02}"
  validate_fonts: true
  sync_specials: false

archive:
  path: ./archives/
  summary:
    create: true 
    created_by: CollinHeist             # Your username
    background: black
    minimum_episodes: 6
    ignore_specials: true
  
plex:
  url: http://192.168.0.1:32400/         # Your local plex IP address
  token: pzdygxzJJdszc-t_Pw_zfZ          # Your Plex token
  verify_ssl: true
  watched_style: unique
  unwatched_style: blur
  integrate_with_pmm_overlays: false
  filesize_limit: 4 MB
  sync:
    file: ./yaml/plex_sync.yml
    mode: append
    compact_mode: true 
    libraries:
    - TV Shows
    - Anime
    volumes: 
      /plex/media/: /maker/media/

sonarr:
  url: http://192.168.0.1:8989/api/v3/   # Your Sonarr IP address
  api_key: d91238d71938581edfaccd        # Your Sonarr API key
  verify_ssl: true
  sync:
    file: ./yaml/sonarr_sync.yml
    mode: append
    compact_mode: true
    monitored_only: true
    required_tags:
    - ongoing
    volumes:
      /sonarr/media/tv: /maker/media/tv
    plex_libraries:
      /maker/media/tv: TV
      /maker/media/anime: Anime

tmdb:
  api_key: d91238d71938581edfaccd        # Your TMDb API key here
  retry_count: 5
  minimum_resolution: 600x300
  skip_localized_images: false

tautulli:
  url: http://192.168.0.1:8181/          # Your Tautulli URL
  api_key: abcdef0123456789              # Your API key
  update_script: /config/update_card.sh
  verify_ssl: true
  username: CollinHeist
  agent_name: Update TitleCardMaker      # Your Username
  script_timeout: 120 

imagemagick:
  container: ImageMagick                 # Could also use container ID, i.e. 9ab39821bdae
  timeout: 120
Clone this wiki locally