diff options
author | Eddy Pedroni <epedroni@pm.me> | 2025-07-17 23:24:15 +0200 |
---|---|---|
committer | Eddy Pedroni <epedroni@pm.me> | 2025-07-17 23:24:15 +0200 |
commit | 748f056faf16b08ac41de991b1aeb664f2b86d8e (patch) | |
tree | 451b807a1abd54f99057070423eda6f49f8511ab /solo-tool-project/src/solo_tool/solo_tool.py | |
parent | 7fb8e255e2e1cc912b029a5715db5b92258293b6 (diff) |
Diffstat (limited to 'solo-tool-project/src/solo_tool/solo_tool.py')
-rw-r--r-- | solo-tool-project/src/solo_tool/solo_tool.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/solo-tool-project/src/solo_tool/solo_tool.py b/solo-tool-project/src/solo_tool/solo_tool.py index 63fb7f9..e8474e6 100644 --- a/solo-tool-project/src/solo_tool/solo_tool.py +++ b/solo-tool-project/src/solo_tool/solo_tool.py @@ -11,6 +11,7 @@ class SoloTool: self._song = None self._keyPoints = [] self._keyPoint = None + self._volumes = [] def __del__(self): del self._player @@ -30,6 +31,8 @@ class SoloTool: if previousSong is None or self._keyPoints[previousSong] != self._keyPoints[index]: self._notifier.notify(Notifier.KEY_POINT_LIST_EVENT, self.keyPoints) + self.volume = self._volumes[index] + @staticmethod def _keyPointValid(kp: float) -> bool: return kp is not None and kp >= 0.0 and kp < 1.0 @@ -38,11 +41,12 @@ class SoloTool: def songs(self) -> list[str]: return self._songs.copy() - def addSong(self, path: str) -> None: + def addSong(self, path: str, keyPoints: list[float]=[], volume: float=1.0) -> None: if path in self._songs: return self._songs.append(path) - self._keyPoints.append([]) + self._keyPoints.append(keyPoints) + self._volumes.append(volume) self._notifier.notify(Notifier.SONG_LIST_EVENT, self.songs) if self.song is None: self.song = 0 @@ -112,6 +116,8 @@ class SoloTool: @volume.setter def volume(self, new: float) -> None: if new is not None and new >= 0.0 and new != self._player.getPlaybackVolume(): + if self._song is not None: + self._volumes[self._song] = new self._player.setPlaybackVolume(new) self._notifier.notify(Notifier.PLAYBACK_VOLUME_EVENT, new) |