AVFAudio sample architecture
Source-backed, high-level architecture notes for Apple sample-code pages grouped in the AVFAudio folder.
- Catalog module label:
AVFAudio - Coverage: 9 / 9 sample pages documented
- Source policy: archive hashes and extracted-tree references are verified locally before analysis
Samples
| Sample | Platforms | High-level architecture | Documented patterns |
|---|---|---|---|
| Adding synthesized speech to calls | iOS, iPadOS, Mac Catalyst | A SwiftUI view owns a main-actor call-audio coordinator and a speech actor. | View-owned services, Observable coordinator, Actor isolation, Async notification stream |
| Building a signal generator | iOS, iPadOS, Mac Catalyst, macOS | SwiftUI state flows through a Swift manager and Objective-C++ adapter to a C++ DSP kernel. | Observable manager, Language bridge, Real-time render callback, Strategy table, Parameter ramp |
| Building an audio sequencer to arrange and play clips | macOS | SwiftUI MVVM over a controller, actor-isolated loader, and main-actor engine. | MVVM, Controller orchestration, Actor-isolated loader, Async event stream, Extension-based engine |
| Capturing stereo audio from built-In microphones | iOS, iPadOS, Mac Catalyst | A UIKit controller owns an audio façade and delegates metering and playback completion to focused collaborators. | View controller coordinator, Delegate, Protocol adapter, State machine, Value model |
| Creating a custom speech synthesizer | iOS, iPadOS, Mac Catalyst, macOS | A SwiftUI host edits shared voice configuration; an Audio Unit extension exposes and renders those voices for the system. | Host app and extension, Factory, Shared app-group storage, Template method, Render callback |
| Creating custom audio effects | iOS, iPadOS, Mac Catalyst, macOS | Platform hosts share a Swift manager/UI and Audio Unit implementation that bridges through Objective-C++ to a C++ DSP kernel. | Multi-target shared core, Manager facade, Delegate, Audio Unit subclass, Objective-C++ adapter, DSP kernel |
| Performing offline audio processing | — | A single playground page implements a top-level load-configure-render-save pipeline. | Linear pipeline, Manual rendering loop, Status-driven retry, Resource transformation |
| Playing custom audio with your own player | iOS, iPadOS, Mac Catalyst | A SwiftUI-owned observable player façade protects playlist state and delegates serialized rendering to a queue-bound serializer. | Observable facade, Serial executor, Adapter protocol, Pipeline stages, Notification bridge |
| Using voice processing | iOS, iPadOS, Mac Catalyst | A UIKit controller owns session/UI lifecycle while an AudioEngine façade owns nodes, buffers, recording, and taps. |
View controller facade, Audio graph owner, Provider protocol, Observer, Signal-processing helper |
Cross-sample signals
Recurring documented patterns
| Pattern label | Sample documents |
|---|---|
| Delegate | 2 |
Type-role naming evidence
Counts below are declaration-name suffixes, not inferred patterns.
| Role suffix | Distinct declarations across samples |
|---|---|
View |
13 |
Delegate |
7 |
Controller |
6 |
App |
5 |
Engine |
3 |
Manager |
2 |
Provider |
2 |
Player |
2 |
Generator |
1 |
Loader |
1 |
Scene |
1 |
ViewModel |
1 |
Factory |
1 |
Adapter |
1 |
Command |
1 |
Handler |
1 |
Swift access-control evidence
These are declaration occurrences in scanned Swift source, including implicit internal declarations.
| Access level | Occurrences |
|---|---|
implicit internal |
1111 |
private |
264 |
public |
68 |
private(set) |
15 |
fileprivate |
5 |
References
Generated from the verified local catalog and completed Markdown documents.