Skip to content

Add features to Tinted Frame card, many other changes and fixes#342

Merged
CollinHeist merged 57 commits intomasterfrom
develop
Jun 17, 2023
Merged

Add features to Tinted Frame card, many other changes and fixes#342
CollinHeist merged 57 commits intomasterfrom
develop

Conversation

@CollinHeist
Copy link
Copy Markdown
Owner

@CollinHeist CollinHeist commented Jun 5, 2023

Major Changes

  • Release (to supporters) the TitleCardMaker Web Interface
  • Begin updated (and much prettier) documentation - hosted at https://titlecardmaker.readthedocs.io/en/latest/
  • Handle combined ISO-639-1 and ISO-3166-1 language codes like es-MX or es-ES for greater translation fidelity
  • Add multiple features to Tinted Frame title card:
    • Change episode text and frame color to match the font color by default
    • Add middle_element extra - can be either logo or omit - to add enlarged logo to the middle of the card, e.g.:
    • Add logo_size extra to allow shrinking or enlarging the logo size by a scalar, for example: logo_size: 1.5 to scale to 150%
    • Add blur_edges extra to optionally enable/disable blurring the outer edge
    • Change vertical position of top logo element by +20 pixels for better centering
    • Closes Optionally disable outer frame blurring in Tinted Frame title card #341
  • Change default Sonarr request timeout to 10 minutes to handle bad/slower Sonarr connections

Major Fixes

  • Uppercase episode text in Star Wars title card (was being title cased)
  • Handle title and index text larger than the frame width in the Tinted Frame title card (was drawing frame boundaries that extended outward, now does not draw at all
  • Catch and log (at the Manager level) uncaught Exceptions in serial run mode
  • Fix syncing from Emby in match mode

Minor Changes

  • Allow custom episode text color in Anime title card via episode_text_color extra
  • Allow custom season text color in Roman Numeral title card via season_text_color extra
  • Use 4:4:4 sampling factor in all card operations (can default to 4:2:0 which has some JPEG compression artifacts)
  • Log everything (just logged messages were being ignored)
  • Allow logos to be omitted from Season Posters
  • Add hide_episode_text to Fade title card
  • Allow logo file format strings in Tinted Frame title card
  • Print Traceback for RemoteFile download errors
  • Log relevant Series and Episode when source image / logo download fails

Minor Fixes

  • Handle Jellyfin libraries with no collection types
  • Handle episodes without season or episode numbers in Jellyfin
  • Allow transparent background images in all cards that support it
  • Handle extra non-Unix trailing spacing in version files
  • Fix manual Title Card importing into Emby or Jellyfin with fixer
  • Handle errors in interface creation when importing cards with fixer
  • Handle empty string "" database ID's in DatabaseInfoContainer class
  • Error if logo file is indicated and does not exist in Tinted Frame title card
  • Handle badly types templates specification(s)
  • Catch and reset DB for uncaught ValueError from PersistentDatabase function calls
  • Handle more types of malformed image content (specifically <Code>AccessDenied</Code>)
  • Fix local logo finding logic in Poster title card
  • Correct traceback printing for missing logos in Tinted Frame card
  • Properly assign Series TVRage ID's
  • Fix manual importing into - closes Fix manual title card importing to Emby and Jellyfin #337

Use correct list of supported TMDb language codes
Might need to validate this on other machines, but the default sampling factor can be 4:2:0 on some installs, so forcing this to 4:4:4 can reduce compression artifacts for .jpg cards on some installs
Parse "episode_text_color" extra in AnimeTitleCard
For cards that support it, allow completely transparent backgrounds by setting the background color to transparent in BaseCardType.resize_output property
Implements #337. Should fix most import issues for these media servers (as well as Plex).

Also update the docstrings and type annotations of a lot of methods
Change season text color in RomanNumeralTitlecard via "season_text_color" series extra
Do not use global MediaInfoSet object when importing cards via fixer
If the text elements are longer than the maximum width of the frame, rather than drawing inverted edges (starting inside going out), just do not draw that frame at all
Allow use of season and episode number format strings for logo file paths in `TintedFrameTitleCard`
Handle combined ISO-639-1 and ISO-3166-1 language codes like "es-MX" or "es-ES" for greater translation fidelity
- Change episode text color to default to the font color
- Parse "middle_element", default to "omit" but can be "logo" to add an enlarged logo to the middle of the frame
- Parse "logo_size" as a scalar for shrinking or enlarging the logo size
- Parse "blur_edges" boolean to optionally enable/disable blurring the outer frame edges #341
- Change vertical position of the top logo element +20 px
Catch and reset DB for uncaught ValueError from PersistentDatabase function calls
Catch and log (at the Manager level) uncaught Exceptions in Serial run mode
Increase timeout to 600 sec (from 30) to handle slow Sonarr connections
Handle/reject <Code>AccessDenied</Code> image content from Plex
@CollinHeist CollinHeist self-assigned this Jun 5, 2023
@CollinHeist
Copy link
Copy Markdown
Owner Author

CollinHeist commented Jun 13, 2023

To-Do

  • Document changes to the Tinted Frame title card
    • Addition of middle element
    • Changes to episode text color
    • Changes to frame color
    • Addition of logo size
    • Addition of blur edges
    • Handling of logo format strings
  • Document changes to the Anime title card
    • Addition of episode text color
  • Document changes to the Roman Numeral title card
    • Addition of season text color
  • Document changes to the Standard title card
    • Addition of episode text color
  • Document logo omission from season posters
    • Document omit_logo YAML option
    • Update mini maker arguments

@CollinHeist CollinHeist merged commit 51e4ef2 into master Jun 17, 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

1 participant