From: Marcel van der Veldt Date: Tue, 11 Feb 2025 21:45:55 +0000 (+0100) Subject: Fix: accept last 60 seconds as finished for audiobooks/episodes X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=e10181bc1093dedd4f52d9b373ecc3a4b7e376f0;p=music-assistant-server.git Fix: accept last 60 seconds as finished for audiobooks/episodes --- diff --git a/music_assistant/controllers/player_queues.py b/music_assistant/controllers/player_queues.py index 8c553f77..cc572a23 100644 --- a/music_assistant/controllers/player_queues.py +++ b/music_assistant/controllers/player_queues.py @@ -1838,7 +1838,16 @@ class PlayerQueuesController(CoreController): duration = item_to_report.streamdetails.duration else: duration = item_to_report.duration or 3600 - fully_played = seconds_played >= (duration or 3600) - 5 + + # determine if item is fully played + # for podcasts and audiobooks we account for the last 60 seconds + if item_to_report.queue_item_id == prev_item_id and item_to_report.media_type in ( + MediaType.AUDIOBOOK, + MediaType.PODCAST_EPISODE, + ): + fully_played = seconds_played >= (duration or 3 * 3600) - 60 + else: + fully_played = seconds_played >= (duration or 3600) - 10 self.logger.debug( "PlayerQueue %s playing/played item %s - fully_played: %s - progress: %s",