feat: add macOS meeting audio capture

This commit is contained in:
dh
2026-08-06 08:16:54 +02:00
parent b3aeef24eb
commit 59ba70ca11
15 changed files with 1282 additions and 4 deletions
@@ -0,0 +1,30 @@
## Why
The portable Meeting Assistant build runs on macOS, but starting a recording resolves `UnavailableMeetingAudioSource` and fails before any audio reaches transcription. macOS users need the same microphone-plus-computer-output capture contract without changing the established Windows NAudio implementation.
## What Changes
- Add native macOS microphone capture through AVFoundation.
- Add native macOS computer-output capture through ScreenCaptureKit.
- Stream both sources as 16-bit PCM into the existing alignment, echo-cancellation, gain, mixing, recording, and transcription pipeline.
- Select the macOS sources only when the portable build is running on macOS; retain the existing compile-time Windows registrations unchanged.
- Package a small Swift capture helper in macOS build and publish output.
- Produce a short mixed WAV from live microphone and system PCM emitted by the implemented native capture helper as operational evidence.
- Verify the public recording endpoints, managed macOS adapters, mixer, and stop behavior together with deterministic process-boundary audio.
## Capabilities
### New Capabilities
None.
### Modified Capabilities
- `meeting-recording`: Extend microphone and computer-output recording to macOS while preserving Windows behavior.
## Impact
- Portable application dependency registration.
- A macOS-native helper executable built from Swift source.
- macOS Screen Recording/System Audio and Microphone privacy permissions.
- Recording behavior tests, build verification, and runtime documentation.