forked from Manuel/meeting-assistant
feat: add macOS meeting audio capture
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Meeting Assistant
|
||||
|
||||
Meeting Assistant is Manuel's local .NET meeting capture and knowledge service. It runs on the Windows workstation, records microphone plus system audio, writes Obsidian meeting artifacts, transcribes with speaker attribution, enriches meetings from local context, and drives summary/project agents without depending on Teams, Zoom, or another meeting-platform API for the primary flow.
|
||||
Meeting Assistant is Manuel's local .NET meeting capture and knowledge service. It runs on Windows and macOS, records microphone plus system audio, writes Obsidian meeting artifacts, transcribes with speaker attribution, enriches meetings from local context, and drives summary/project agents without depending on Teams, Zoom, or another meeting-platform API for the primary flow.
|
||||
|
||||
## What This Repo Owns
|
||||
|
||||
@@ -9,7 +9,8 @@ This repository owns the application source, tests, OpenSpec requirements, confi
|
||||
The app is intentionally local-first:
|
||||
|
||||
- Windows builds provide the tray icon, global hotkeys, NAudio capture, Outlook Classic COM enrichment, active-window screenshots, and notifications.
|
||||
- Non-Windows builds keep the server/testable service surface but compile out Windows-only integrations.
|
||||
- Portable builds on macOS capture the default microphone through AVFoundation and computer output through ScreenCaptureKit, while keeping Windows-only desktop integrations compiled out.
|
||||
- Portable builds on other hosts keep the server/testable service surface but do not provide meeting audio capture.
|
||||
- The normal runtime endpoint is local HTTP on port `5090`, with `/health` and `/recording/status` as the safe first checks.
|
||||
- Behavior changes are OpenSpec-driven; current accepted requirements live under `openspec/specs`.
|
||||
|
||||
@@ -24,6 +25,15 @@ dotnet test MeetingAssistant.slnx
|
||||
dotnet run --project MeetingAssistant
|
||||
```
|
||||
|
||||
On macOS, build the portable target on the Mac that will run it:
|
||||
|
||||
```zsh
|
||||
dotnet build MeetingAssistant/MeetingAssistant.csproj -f net10.0
|
||||
dotnet run --project MeetingAssistant/MeetingAssistant.csproj -f net10.0
|
||||
```
|
||||
|
||||
The macOS build compiles the bundled Swift capture helper into `Native/macos-meeting-audio-capture`. On first recording, allow both **Microphone** and **Screen & System Audio Recording** under System Settings > Privacy & Security. macOS recording is controlled through the local HTTP endpoints because the tray icon and global hotkeys remain Windows-only.
|
||||
|
||||
For the durable local background instance, use the snippets restart helper:
|
||||
|
||||
```powershell
|
||||
|
||||
Reference in New Issue
Block a user