- if not music.is_not_stopped():
- music.play(volume = volume, fade_in = fade_in, start_at = start_at, loop = loop)
-
- def seek(self, music = None, value = 0, delta = False, **kwargs):
- for music in self.music_list(music):
- music.seek(value = value, delta = delta)
-
- def stop(self, music = None, fade_out = 0, wait = False, **kwargs):
- previous = None
- for music in self.music_list(music):
- if music.is_loaded_paused() or music.is_loaded_playing():
- if previous is not None:
- previous.stop(fade_out = fade_out)
- previous = music
-
- if previous is not None:
- previous.stop(fade_out = fade_out, wait = wait)
-
- def stop_all_actions(self, **kwargs):
- self.mapping.stop_all_running()
-
- def volume(self, music = None, value = 100, delta = False, **kwargs):
- if music is not None:
- music.set_volume(value, delta = delta)
- else:
- self.mapping.set_master_volume(value, delta = delta)
-
- def wait(self, duration = 0, music = None, **kwargs):
- self.sleep_event = threading.Event()
-
- if music is not None:
- music.wait_end()
-
- threading.Timer(duration, self.sleep_event.set).start()
- self.sleep_event.wait()
-
- # Action messages
- def command_print(self, command = "", **kwargs):
- return "running command {}".format(command)
-
- def pause_print(self, music = None, **kwargs):
- if music is not None:
- return "pausing « {} »".format(music.name)
- else:
- return "pausing all musics"
-
- def unpause_print(self, music = None, **kwargs):
- if music is not None:
- return "unpausing « {} »".format(music.name)