From: Marcel van der Veldt Date: Thu, 6 Mar 2025 22:34:54 +0000 (+0100) Subject: Fix: ignore volume adjustments in announcement if strategy is none X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=63d336d31eca4b861bddc4ee3038ed75390e1290;p=music-assistant-server.git Fix: ignore volume adjustments in announcement if strategy is none --- diff --git a/music_assistant/controllers/players.py b/music_assistant/controllers/players.py index 65e113de..4147b9ad 100644 --- a/music_assistant/controllers/players.py +++ b/music_assistant/controllers/players.py @@ -1224,6 +1224,8 @@ class PlayerController(CoreController): CONF_ENTRY_ANNOUNCE_VOLUME.key, CONF_ENTRY_ANNOUNCE_VOLUME.default_value, ) + if volume_strategy == "none": + return None volume_level = volume_override if volume_level is None and volume_strategy == "absolute": volume_level = volume_strategy_volume @@ -1485,7 +1487,7 @@ class PlayerController(CoreController): player.volume_control = config.get_value(CONF_VOLUME_CONTROL) player.mute_control = config.get_value(CONF_MUTE_CONTROL) - async def _play_announcement( + async def _play_announcement( # noqa: PLR0915 self, player: Player, announcement: PlayerMedia, @@ -1554,8 +1556,11 @@ class PlayerController(CoreController): tg.create_task(self.cmd_stop(volume_player.player_id)) if volume_player.volume_control == PLAYER_CONTROL_NONE: continue - prev_volume = volume_player.volume_level or 0 + if (prev_volume := volume_player.volume_level) is None: + continue announcement_volume = self.get_announcement_volume(volume_player_id, volume_level) + if announcement_volume is None: + continue temp_volume = announcement_volume or player.volume_level if temp_volume != prev_volume: prev_volumes[volume_player_id] = prev_volume