Question

I want to do some sound synthesis on Mac OS X (and ideally other Unix-like OS) using ANSI C.

This is for learning purposes rather than "I need a solution, any solution, quick!"

Say I have an 8-bit buffer in my C program that I update 22050 times a second. How can I get my speakers to output that as a waveform?

Was it helpful?

Solution

There is no POSIX audio API or something similar. So if you want sound support on Linux, OSX, etc. you need a library that wraps around the native sound APIs of the different OSs. Take a look on this SO question. It's not asking directly for OSX, but most of the answers should also work for it, except maybe libao. At least I haven't found anything on their homepage, that says they support OSX.

OTHER TIPS

SDL can play sound buffers. But PortAudio may work better PA will call your C callback when it needs more data, and then you can hand it the next buffer. It's fairly easy actually.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top