xyz
xyz

Reputation: 27837

What's a simple way to output homebrewed synthesized sound on Unix?

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?

Upvotes: 2

Views: 508

Answers (2)

quinmars
quinmars

Reputation: 11573

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.

Upvotes: 1

Timothy Baldridge
Timothy Baldridge

Reputation: 10663

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.

Upvotes: 3

Related Questions