Fadeouts and gain

This commit is contained in:
2025-08-05 02:43:29 +01:00
parent 8fa467cb93
commit 18f4a6168f
3 changed files with 69 additions and 11 deletions

16
gig.py
View File

@@ -24,6 +24,8 @@ class EventRunner:
self._playing = None
self._active = []
self._currentitem = None
for item in self._gigconfig['items']:
self._gigconfig['items'][item].set_eventrunner(self)
def set_audiencecontent(self, audiencecontent):
for item in self._gigconfig['items']:
@@ -75,7 +77,8 @@ class EventRunner:
self._playing = None
self._selected = None
for event in self._active:
event.stop()
if event is not None:
event.stop()
self._active = []
if self._currentitem is not None:
self._currentitem.reset()
@@ -84,6 +87,17 @@ class EventRunner:
event.start()
self._active.append(event)
def notify(self, *args, **kwargs):
for event in self._active:
if event is not None:
event.notify(*args, **kwargs)
def finished(self, event):
# We might get called back here from within a notify or other such construct
for i, e in enumerate(self._active):
if e is event:
self._active[i] = None
def pause(self):
pass