Add audio source controls, microphone indicator, and camera overlay#41
Open
Add audio source controls, microphone indicator, and camera overlay#41
Conversation
Add toggleable system audio and microphone checkboxes to the menubar dropdown under a new 'Sources' section. Replace the simple 'Record microphone' toggle in Preferences with a device picker that lists available audio input devices alongside a 'No Microphone' option. When a previously selected microphone is disconnected, the app falls back to the system default input device. The recording pipeline now respects the kRecordSystemAudio preference for SCStream's capturesAudio, and the selected microphone device ID is passed to SCK on macOS 15+.
Show a mic.slash icon in the menu bar when the microphone is disabled, visible both when idle and during recording. Add a configurable 'Toggle microphone' keyboard shortcut (accessible in Preferences → Shortcuts) that toggles recording on/off in real-time and immediately updates the menu bar indicator. When enabling via the shortcut, the system default microphone is auto-selected if none was previously chosen.
Introduce a Loom-style floating circular camera preview that can be freely positioned on screen. Uses a borderless NSPanel with an AVCaptureVideoPreviewLayer clipped to a circle. The overlay stays on top of all windows and is captured as part of screen recordings. New Camera tab in Preferences with a device picker (including Continuity Camera for iPhone Sidecar) and a size slider that updates the overlay in real-time via NotificationCenter. A Camera checkbox in the menubar dropdown toggles visibility on the fly. The overlay state persists across app restarts. Camera permissions are requested on first use with a dialog pointing to System Settings if denied. Window tiling/docking helpers are disabled on the panel. Note: when 'Exclude Azayaka itself' is checked in Preferences, the camera overlay will not appear in the recording since it belongs to the Azayaka process.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR introduces three new features: improved audio source selection (system/mic), a microphone mute indicator in the menu bar, and a Loom-style circular camera overlay. It also includes necessary entitlements and preference updates.
Changes
1. Audio Source Controls
kRecordSystemAudiotoSCStream.capturesAudioand passed the selected microphone device ID toSCK(macOS 15+) orAVAudioEngine(legacy).2. Microphone Mute Indicator & Shortcut
mic.slashicon when the microphone is disabled (muted), visible in both idle and recording states.3. Circular Camera Overlay
NSPanelwithAVCaptureVideoPreviewLayer).NotificationCenter.NSCameraUsageDescriptionandcom.apple.security.device.cameraentitlement.Notes
NSCameraUsageDescriptionadded toInfo.plist(required for camera access).