better state reporting

This commit is contained in:
2026-05-19 14:30:57 +02:00
parent ef68672203
commit 2daaafb229
3 changed files with 56 additions and 9 deletions
+5 -4
View File
@@ -130,7 +130,7 @@
(cmd-put (cons cmd args)) (ret-get))))
(let* ((handle #f)
(cb-state* (λ (st) (cb-state handle st)))
(cb-state* (λ (st st-hash) (cb-state handle st st-hash)))
(cb-eof* (λ () (cb-eof-stream handle))))
(set! handle (make-audio-play #t
cb-state* cb-eof*
@@ -144,10 +144,11 @@
(let loop ()
(if (audio-play-valid? handle)
(let ((e (evt-get 500)))
(cond ((eq? e #f) (loop))
(cond ((eq? e #f) (void))
((is-event? e 'state)
(set-audio-play-state! handle (evt-data e))
(cb-state* (evt-data e)))
(let ((data (evt-data e)))
(set-audio-play-state! handle (car data))
(cb-state* (cadr data) (car data))))
((is-event? e 'audio-done) (cb-eof*))
((is-event? e 'exception)
(err-sound "audio-player: exception event: ~a" e))