• 0 Posts
  • 1 Comment
Joined 1Y ago
cake
Cake day: Aug 12, 2023

help-circle
rss

You say you’ve tried longer durations, but you’re only sleeping for microseconds here… I’d assume you’re simply playing the sound 30 times in 30 microseconds and as such only hear the last iteration. If you want the whole file to play every time, you could replace play_raw with play_once and use the returned Sink to simply sleep_until_end() instead of your own delay.

Edit: I just saw that you wrote that the clip played once and then quit, that doesn’t make a lot of sense (with that sleep duration, it should quit pretty much immediately). It’s been a while since I played around with Rodio and things seem to have changed a little. From quickly looking into it, I’d probably only call your play_sound function once and edit it to create a Sink in there (see the example in the documentation). You can then append an infinitely repeating source to that sink and sleep for you total desired duration.