Assorted C++ classes simplifying common operations in Core Audio and Audio Toolbox.
Note
C++17 is required.
Add a package dependency to https://github.com/sbooth/CXXAudioUtilities in Xcode.
- Clone the CXXAudioUtilities repository.
swift build
.
C++ Class | Description |
---|---|
SFB::CABufferList | A class wrapping a Core Audio AudioBufferList with a specific format, frame capacity, and frame length |
SFB::CAChannelLayout | A class wrapping a Core Audio AudioChannelLayout |
SFB::CAStreamBasicDescription | A class extending the functionality of a Core Audio AudioStreamBasicDescription |
SFB::CATimeStamp | A class extending the functionality of a Core Audio AudioTimeStamp |
SFB::CAException | std::error_category for handling Core Audio errors as exceptions |
C++ Class | Description |
---|---|
SFB::CAPropertyAddress | A class extending the functionality of a Core Audio AudioObjectPropertyAddress |
SFB::CAAudioObject | A wrapper around a HAL audio object |
SFB::CAAudioDevice | A wrapper around a HAL audio device |
SFB::CAAudioStream | A wrapper around a HAL audio stream |
SFB::CAAudioSystemObject | A wrapper around kAudioObjectSystemObject |
C++ Class | Description |
---|---|
SFB::AudioFileWrapper | A bare-bones wrapper around AudioFile modeled after std::unique_ptr |
SFB::ExtAudioFileWrapper | A bare-bones wrapper around ExtAudioFile modeled after std::unique_ptr |
SFB::CAAUGraph | A wrapper around AUGraph |
SFB::CAAudioFile | A wrapper around AudioFile |
SFB::CAExtAudioFile | A wrapper around ExtAudioFile |
SFB::CAAudioFormat | A wrapper around AudioFormat |
SFB::CAAudioConverter | A wrapper around AudioConverter |
C++ Class | Description |
---|---|
SFB::RingBuffer | A generic ring buffer |
SFB::AudioRingBuffer | A ring buffer supporting non-interleaved audio |
SFB::CARingBuffer | A ring buffer supporting timestamped non-interleaved audio |
C++ Class | Description |
---|---|
SFB::ByteStream | A ByteStream provides heterogeneous typed access to an untyped buffer |
SFB::CFWrapper | A wrapper around a Core Foundation object |
SFB::DispatchSemaphore | A wrapper around dispatch_semaphore_t |
SFB::ScopeGuard | A class that calls a function upon destruction |
SFB::UnfairLock | A wrapper around os_unfair_lock implementing C++ Lockable |
C++ Class | Description |
---|---|
SFB::AudioUnitRecorder | A class that asynchronously writes the output from an AudioUnit to a file |
Released under the MIT License.