A UGen to play your memory

Hey everyone,
while working on XPlayBuf, I run into some mistakes in memory management… that sounded really nice to me! Plus I dig the idea of giving voice to these glitchy areas of computer music, it just makes me happy.
So I made a UGen that reads arbitrary regions of scsynth’s memory (really, assigning a pointer to an arbitrary address). It sounds great to me, especially when playing the heap.

Now, I’m on Linux, and thanks to pointers (haha) from @VIRTUALDOG I could develop a way to get “viable” memory addresses, that minimizes the chance of crashing the server by a great deal, and I included that strategy in NasalDemons’s sc class.
But I haven’t been looking into how to do the same Windows and Mac, at least yet.

Anyway, I want to share it! Feel free to build it and give it a try, HelpDoc is included.
Expect loudness, noise, bad values, and as the story goes, demons flying out from your nose.

3 Likes

Bad values might disappear by reading the values as 16 or 24 bit integers, casting to float and normalizing in the output. It will still be juicy and noisy, but maybe more stable.

A few years ago, at a conference, I saw Yota Morimoto make some amazing crunchy sounds by reading executables as streams of integers (which you can do with File) and loading those into buffers. It’s very cool.

hjh

3 Likes