# Useful Info about CoreAudio

## Links

- [AudioUnitSDK](https://github.com/apple/AudioUnitSDK) - Apple AudioUnit SDK: The AudioUnitSDK contains a set of base classes as well as utility sources required for Audio Unit development. These utility classes extend or wrap Core Audio API’s providing developers with the essential scaffolding to create audio effects, instruments, and generators on Apple platforms. They provide an easier to implement C++ class model wrapping the C framework APIs.

- [AudioUnit Examples](https://github.com/apple/AudioUnit-Examples) - Apple audiounit examples repository contains sample code for Audio Unit v2 and v3 development.

- [CoreAudio Overview](https://developer.apple.com/library/archive/documentation/MusicAudio/Conceptual/CoreAudioOverview/CoreAudioEssentials/CoreAudioEssentials.html) - Apple Docs

- [Chapter 5: Learning CoreAudio](https://www.pearson.de/media/muster/ext/9780321636959.pdf)

- [github-topics-audiounit](https://github.com/topics/audiounit) - github topics for 'audiounit'

- [github-topics-audiounits](https://github.com/topics/audio-units) - github topics for 'audiounits'

- [Simple intro to CoreAudio](https://jamesalvarez.co.uk/blog/a-simple-introduction-to-core-audio/) -

- [Getting Started with Audio Queues in Core Audio](https://pjrader1.hashnode.dev/getting-started-with-audio-queues-in-core-audio)

- [How do i start writing an audiounit plugin](https://llllllll.co/t/how-to-get-started-writing-an-audiounit-plugin/10902)

- [Audio Unit Input Via A Render Callback](https://medium.com/programming-for-music/audio-unit-input-via-a-render-callback-7acaa7c82683): medium article

- [gist coreaudio code](https://gist.github.com/ChunMinChang/47b8712ed57b96721eec18dede39d2f9)

- [Audio APIs, Part 1: Core Audio / macOS](https://bastibe.de/2017-06-17-audio-apis-coreaudio.html) from author of py[SoundCard](https://github.com/bastibe/SoundCard)

- [SO: callback never called](https://stackoverflow.com/questions/19434413/coreaudio-audioqueue-callback-function-never-called-no-errors-reported) - SO: CoreAudio AudioQueue callback function never called, no errors reported

- [SO: microphone with callback](https://stackoverflow.com/questions/41755825/coreaudio-change-sample-rate-of-microphone-and-get-data-in-a-callback) - SO: CoreAudio: change sample rate of microphone and get data in a callback?

- [SO: mic and speaker](https://stackoverflow.com/questions/31973110/getting-mic-input-and-speaker-output-using-core-audio) - Getting mic input and speaker output using Core Audio

- [Handmade Hero: forum posts re coreaudio](https://hero.handmade.network/forums/code-discussion/t/56-mac_os_x_coreaudio_reference_setup_code)

  - [handmade-alt-proto](https://github.com/zenmumbler/handmade-alt-proto)
  - [osx port of handmade hero](https://github.com/itfrombit/osx_handmade)
  - [osx_handmade_minimal](https://github.com/itfrombit/osx_handmade_minimal)
  - [makebundle](https://gist.github.com/framkant/1c135f8d6d012ceceda6)

## Examples

- [audio-unit-gist](https://gist.github.com/gcatlin/0dd61f19d40804173d015c01a80461b8) - Core Audio sine wave example

- [audiounittest](https://gist.github.com/jsbain/0db690ed392ce35ec05fdb45bb2b3306) - Gist using ctypes to test audiounit

- [ausine](https://github.com/joostvdm/ausine/blob/main/ausine.py) - Build an Audio Unit in Python on iOS

- [LPF](https://github.com/bradhowes/LPF) - AUv3 AudioUnit low-pass filter for iOS and macOS

- [AUv3Template](https://github.com/bradhowes/AUv3Template) - Template project for new AUv3 effects in iOS and macOS

- [Plink](https://github.com/andrewcb/plink) - Plink is an environment for hosting AudioUnit instruments and effects and allowing them to be played and manipulated in code. It is still under development.

- [AUGainPluginExample](https://github.com/vcsoares/AUGainPluginExample) - A barebones Gain plugin, created while learning the basics of Audio Unit programming.

- [AudioUnitMetronome](https://github.com/Serge45/AudioUnitMetronome) - A metronome made with AUAudioUnit

- [AudioTips](https://github.com/tomisacat/AudioTips) - Some usage tips about Audio(AudioToolbox/CoreAudio/AudioUnit).

- [BassMidiAudioUnit](https://github.com/newzik/BassMidiAudioUnit) - AUv3 AudioUnit acting as a BASSMIDI player

- [LearningAudioUnit](https://github.com/oxape/LearningAudioUnit) - AudioUnit Demo

- [multiplatform-audiounit](https://github.com/soakyaudio/multiplatform-audiounit) - Example SwiftUI multiplatform project with bundled AUv3 extension

- [Audio](https://github.com/LevenWin/Audio) - AudioQueue, AudioUnit, Audio Graph

- [audiounitjs](https://github.com/russellmcc/audiounitjs) - Scaffolding Script for Mac/iOS audio applications with HTML UI.

- [AudioUnitSample](https://github.com/StevenKuo/AudioUnitSample) - Uses remoteIO audioUnit to play streaming audio.

- [AUParamsApp](https://github.com/genedelisa/AUParamsApp) - An AUv3 MIDI plugin. See the blog post
