Skip to content

Commit b69720a

Browse files
committed
Add closing of Mixer instances.
1 parent 463b5b0 commit b69720a

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

tcod/sdl/audio.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,20 +267,24 @@ def __init__(self, device: AudioDevice):
267267
super().__init__(daemon=True)
268268
self.device = device
269269
self._lock = threading.RLock()
270+
self._running = True
270271
self.start()
271272

272273
def run(self) -> None:
273274
buffer = np.full(
274275
(self.device.buffer_samples, self.device.channels), self.device.silence, dtype=self.device.format
275276
)
276-
while True:
277+
while self._running:
277278
if self.device._queued_bytes > 0:
278279
time.sleep(0.001)
279280
continue
280281
self.on_stream(buffer)
281282
self.device.queue_audio(buffer)
282283
buffer[:] = self.device.silence
283284

285+
def close(self) -> None:
286+
self._running = False
287+
284288
def on_stream(self, stream: NDArray[Any]) -> None:
285289
pass
286290

0 commit comments

Comments
 (0)