#lang racket (require rsound) (define ishmael (rs-read "/Users/clements/Desktop/call-me-ishmael.wav")) (define LEAD-TIME (* 1/10 44100)) (define (play-forever sound) (define p (make-pstream)) (define len (rs-frames sound)) (let loop ([t 0]) (pstream-queue p sound (+ t LEAD-TIME)) (define next-t (+ t len)) (sleep (* 1/44100 (- next-t (pstream-current-frame p)))) (loop next-t))) (play-forever ishmael)