Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create two new card types, rewrite almost all user card types, fix Plex mismatch for titles with commas, many other changes and fixes #333

Merged
merged 48 commits into from
Apr 24, 2023

Conversation

CollinHeist
Copy link
Owner

@CollinHeist CollinHeist commented Apr 22, 2023

Major Changes

  • Create new TintedFrameTitleCard card type (Create TintedFrameTitleCard new card type #331)
    • Specified via card_type of tinted frame or blurred border
    • Example of this card (and showcase of customization):
    • This card supports all font and season customizations, as well as the optional addition of a logo in place of the season/episode text at the bottom of the card (see second above image).
    • Supports the following extras: episode_text_color, separator, frame_color, top_element, bottom_element, and logo - all described here.
  • Create new DividerTitleCard card type (Create new DividerTitleCard card type #326)
    • This card is similar to the Anime title card (same font), but has a completely different layout
    • Specified via card_type: divider
    • Example of this card (and showcase of customization):
    • Aside from normal font customizations, the text stroke color can be changed, as well as the position itself (via series extras).
    • Supports the following extras: stroke_color, title_text_position, and text_position - all described here.
  • Allow background images in LogoTitleCard (Allow background images in LogoTitleCard #325)
    • Background images can be used in place of the solid color
    • If using this, I recommend setting the watched/unwatched style to an art style so that TCM uses backdrop.jpg by default (instead of a per-episode image)
    • The background image can also separately blurred (instead of the logo) via blur_only_image extra
    • Example YAML and image:
      Survivor (2005):
        card_type: logo
        watched_style: art
        unwatched_style: art blur
       extras:
          logo: ./source/Survivor (2005)/logo.png
          blur_only_image: true
          use_background_image: true
  • Allow specification of non-English languages for logos from TMDb (Allow specification of non-English languages for logo selection from TMDb #330)
    • A language priority can be set within the TMDb global options - TCM will find the highest priority logo available - for example, to search for logos in order of English, then Spanish, then Japanese:
      tmdb:
        # Other options
        logo_language_priority: en, es, ja
  • Rewrote almost all user-created card types to be much faster - most cards should see between 300-800% creation time decrease

Major Fixes

  • Use much stricter series matching on Plex (require database ID or year exact match) (Handle title mismatches on Plex for titles with commas #327)
    • We've identified a bug in the Plex search API/code which interprets titles with commas as separate queries, which can result in bad matches
    • I've raised the issue with Plex, but a temporary fix has been implemented in TCM to prevent these

Minor Changes

  • Rewrote StarWarsTitleCard to be ~2x faster, and support additional customization
    • Generalize episode prefix detection to work with more than Episode, Chapter, and Part
    • Change default episode_text_format to EPISODE {episode_number_cardinal} (no functional change)
    • Allow custom font color, file, size, and interline spacing
  • Set series database ID's based on the series episode data source- this should reduce false matches on media servers with a lot of similar-named content.
  • Add borderless option to the movie poster maker via --borderless (Add borderless option to Movie Posters #332)
  • Update all Pipfile dependencies - will require pipenv update
  • Add import as valid card_type identifier for TextlessTitleCard
  • Deleted CollinHeist/BetterStandardTitleCardand CollinHeist/StandardAllBoldCard card types (redundant)
  • Add support for omit_gradient extra in lyonza/WhiteTextBroadcast title card
  • Renamed many internal card variables - users who have added custom variable overrides to their series extras or datafiles will need to make the following conversions:
    • title_color -> font_color
    • font -> font_file
    • hide_season -> hide_season_text
    • source -> source_file
    • output_file -> card_file
    • title -> title_text (old title datafile entry is accepted)
    • All font variables are now prefixed with font_ (kerning, interline_spacing, stroke_width, vertical_shift)

Minor Fixes

N/A

Set series database ID's based on the series episode data source. This should reduce false matches on media servers with a lot of similar-named content
No need to check for global interface enables in Manager before executing loop.
Implements #326 (including all indicated extras)
- Make card much faster by using composite single image sequence instead of intermediate image
- Generalize prefix text detection to work with more than just Chapter/Episode/Part
- Change default episode text format string to "EPISODE {episode_number_cardinal}"
- Allow custom font color, file, size, and interline spacing
@CollinHeist CollinHeist self-assigned this Apr 22, 2023
@CollinHeist
Copy link
Owner Author

CollinHeist commented Apr 22, 2023

To-Do

  • Document TintedFrameTitleCard
    • Create new card page
    • Add to README
    • Add to Dockerhub README
    • Add to card type table
  • Document DividerTitleCard
    • Create new card page
    • Add to README
    • Add to Dockerhub README
    • Add to card type table
  • Document background images in LogoTitleCard
  • Document TMDb logo_language_priority option
  • Document changes to StarWarsTitleCard
  • Document borderless movie poster creation with mini maker
  • Add import card type identifier to TextlessTitleCard
  • Document omit_gradient for lyonza/WhiteTextBroadcast
  • Merge card-variable-reworks branch into develop before merging into master
  • Merge TitleCardMaker-CardTypes/card-rewrites into that master branch coincident with this release (required for the variable rework)
  • Update version number to v1.14.0

@CollinHeist CollinHeist merged commit b7d97fa into master Apr 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant