Programmatically stream audio in Cocoa on the Mac

2019-04-02 02:11发布

问题:

How do I go about programmatically creating audio streams using Cocoa on the Mac. To make, say a white-noise generator using core frameworks on Mac OSX in Cocoa apps?

回答1:

One way is using the CoreAudio DefaultOutputUnit.

You can configure it with parameters such as output sampling rate, resolution, and output sample format. Then you can programmatically create a raw sound wave and provide this to the output unit.

Take a look at this example on your machine at /Developer/Examples/CoreAudio/SimpleSDK/DefaultOutputUnit/

Which uses the default output unit to play a programmatically rendered sine wave. Using that as a starting point and you can write a routine to render any thing else to output.

This location at /Developer/Examples/CoreAudio/ also contains tons of other core audio examples.



回答2:

Look at Audio Queue Services.