From 10318e56eada07b4432f405db721b5ea835223f1 Mon Sep 17 00:00:00 2001 From: ChuckBuilds <33324927+ChuckBuilds@users.noreply.github.com> Date: Thu, 17 Apr 2025 13:30:01 -0500 Subject: [PATCH] change config.json data refresh rates and modify logo imaging in nhl --- config/config.json | 4 ++-- src/nhl_scoreboard.py | 18 ++++++++++++------ 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/config/config.json b/config/config.json index 92a6b911..ecee53b1 100644 --- a/config/config.json +++ b/config/config.json @@ -48,7 +48,7 @@ }, "stocks": { "enabled": true, - "update_interval": 60, + "update_interval": 300, "symbols": [ "ASTS", "SCHD", "INTC", "NVDA", "T", "VOO", "SPYG", "SMCI" ], @@ -56,7 +56,7 @@ }, "stock_news": { "enabled": true, - "update_interval": 300, + "update_interval": 800, "scroll_speed": 1, "scroll_delay": 0.001, "max_headlines_per_symbol": 1, diff --git a/src/nhl_scoreboard.py b/src/nhl_scoreboard.py index d895d383..b7f98375 100644 --- a/src/nhl_scoreboard.py +++ b/src/nhl_scoreboard.py @@ -326,13 +326,14 @@ def create_scorebug_image(game_details): try: away_logo = Image.open(game_details["away_logo_path"]).convert("RGBA") away_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) + away_mask = away_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = away_logo_pos[0] upper = (DISPLAY_HEIGHT - away_logo.height) // 2 right = left + away_logo.width lower = upper + away_logo.height box = (left, upper, right, lower) - img.paste(away_logo, box, away_logo) + img.paste(away_logo, box, away_mask) # Use extracted mask except Exception as e: logging.error(f"Error loading/pasting away logo {game_details['away_logo_path']}: {e}") # Draw placeholder text if logo fails @@ -348,13 +349,14 @@ def create_scorebug_image(game_details): try: home_logo = Image.open(game_details["home_logo_path"]).convert("RGBA") home_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) + home_mask = home_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = home_logo_pos[0] upper = (DISPLAY_HEIGHT - home_logo.height) // 2 right = left + home_logo.width lower = upper + home_logo.height box = (left, upper, right, lower) - img.paste(home_logo, box, home_logo) + img.paste(home_logo, box, home_mask) # Use extracted mask except Exception as e: logging.error(f"Error loading/pasting home logo {game_details['home_logo_path']}: {e}") draw.text(home_logo_pos, game_details["home_abbr"], font=team_font, fill="white") @@ -1067,13 +1069,14 @@ class NHLScoreboardManager: try: away_logo = Image.open(game_details["away_logo_path"]).convert("RGBA") away_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) + away_mask = away_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = away_logo_x upper = (self.display_height - away_logo.height) // 2 right = left + away_logo.width lower = upper + away_logo.height box = (left, upper, right, lower) - img.paste(away_logo, box, away_logo) + img.paste(away_logo, box, away_mask) # Use extracted mask except Exception as e: logging.error(f"[NHL] Error rendering upcoming away logo {game_details['away_logo_path']}: {e}") draw.text((away_logo_x, 5), game_details.get("away_abbr", "?"), font=font_team, fill="white") @@ -1085,13 +1088,14 @@ class NHLScoreboardManager: try: home_logo = Image.open(game_details["home_logo_path"]).convert("RGBA") home_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) + home_mask = home_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = home_logo_x upper = (self.display_height - home_logo.height) // 2 right = left + home_logo.width lower = upper + home_logo.height box = (left, upper, right, lower) - img.paste(home_logo, box, home_logo) + img.paste(home_logo, box, home_mask) # Use extracted mask except Exception as e: logging.error(f"[NHL] Error rendering upcoming home logo {game_details['home_logo_path']}: {e}") draw.text((home_logo_x, 5), game_details.get("home_abbr", "?"), font=font_team, fill="white") @@ -1164,13 +1168,14 @@ class NHLScoreboardManager: away_logo = Image.open(game_details["away_logo_path"]).convert("RGBA") away_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) away_logo_drawn_size = away_logo.size # Keep track of size + away_mask = away_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = away_logo_x upper = (self.display_height - away_logo.height) // 2 right = left + away_logo.width lower = upper + away_logo.height box = (left, upper, right, lower) - img.paste(away_logo, box, away_logo) + img.paste(away_logo, box, away_mask) # Use extracted mask except Exception as e: logging.error(f"[NHL] Error rendering away logo {game_details['away_logo_path']}: {e}") draw.text((away_logo_x + 2, 5), game_details.get("away_abbr", "?"), font=font_team, fill="white") @@ -1187,13 +1192,14 @@ class NHLScoreboardManager: home_logo = Image.open(game_details["home_logo_path"]).convert("RGBA") home_logo.thumbnail(logo_size, Image.Resampling.LANCZOS) home_logo_drawn_size = home_logo.size # Keep track of size + home_mask = home_logo.split()[-1] # Extract alpha channel as mask # Calculate box explicitly left = home_logo_x upper = (self.display_height - home_logo.height) // 2 right = left + home_logo.width lower = upper + home_logo.height box = (left, upper, right, lower) - img.paste(home_logo, box, home_logo) + img.paste(home_logo, box, home_mask) # Use extracted mask except Exception as e: logging.error(f"[NHL] Error rendering home logo {game_details['home_logo_path']}: {e}") draw.text((home_logo_x + 2, 5), game_details.get("home_abbr", "?"), font=font_team, fill="white")