Audio on RaspberryPi just stops after a long period

I’m continuing to work through setting up a RPi4 for an installation, and this is the latest issue that I can’t seem to solve.

The SC script I’m using runs perfectly, everything as expected. But after many hours (8+) it just stops making sound. No errors, nothing in the log… just no sound. I tested it on my Macbook Pro and it seems to keep playing after much longer than eight hours.

The only thing I can think of is that it might be running out of memory? But since there’s no error or logging I can’t really tell if that’s the case.

Has anyone else run into this? Or is there a way to get more verbose logs so that I can start tracking this down?

Thanks!

Can you share the code you’re running so someone can test on their machine?

Possible Int overflow on a 32-bit Pi? Are you playing long samples or recording the whole thing?

/* max 32-bit int: */ 2147483647 / (/* likely sample rate: */ 48000 * /* hours: */ 8 * 60 * 60)

is suspiciously close to 1.

That is an interesting lead.

It is a 32-bit OS. I’m not playing anything that long, or recording … but I am playing shorter samples over the whole duration… maybe there’s some cleanup that needs to happen somewhere in there?

It’s strange that there is no error in the console or logs… but I’ll look into this.

Unfortunately it’s not that simple with this one … there are a lot of audio files, code, and it’s running on a really specific environment. (i.e. i don’t run into this issue on my Macbook…)

I just did some digging based on @amindfv’s idea about butting up against a 32 bit int limit in a buffer or something …

The only place I could see it is maybe if synths aren’t being freed, or buffers and buses are just continuing to grow?

I do have a SwitchDelay in there, which looks like it creates its own buffer and isn’t explicitly freed in the script. It is only created once and has a max time set to 20 seconds.

Otherwise all the buffers involved are loaded at the beginning and used over and over again, and they are all short…