diff --git a/app/trackmanager.py b/app/trackmanager.py index 0e0516d..953762d 100644 --- a/app/trackmanager.py +++ b/app/trackmanager.py @@ -167,8 +167,6 @@ class _FadeTrack(QRunnable): sleep(1 / Config.FADEOUT_STEPS_PER_SECOND) self.player.stop() - log.debug(f"Releasing player {self.player=}") - self.player.release() class _Music: @@ -183,6 +181,7 @@ class _Music: self.name = name self.max_volume: int = Config.VLC_VOLUME_DEFAULT self.start_dt: Optional[dt.datetime] = None + self.player_count: int = 0 def adjust_by_ms(self, ms: int) -> None: """Move player position by ms milliseconds""" @@ -222,6 +221,8 @@ class _Music: with lock: p.stop() p.release() + self.player_count -= 1 + log.debug(f"_Music.stop: Releasing player {p=}, {self.player_count=}") p = None def fade(self, fade_seconds: int) -> None: @@ -325,6 +326,8 @@ class _Music: if self.player: _ = self.player.play() self.set_volume(self.max_volume) + self.player_count += 1 + log.debug(f"_Music.play: {self.player_count=}") if position: self.player.set_position(position)