feat(debug): GUI toggle for DRED verbose logs + macOS mic permission
DRED verbose logs (off by default — keeps logcat clean in normal use): - wzp-codec: DRED_VERBOSE_LOGS atomic flag with dred_verbose_logs() / set_dred_verbose_logs() helpers - opus_enc: gate "DRED enabled" + libopus version logs behind the flag - desktop/src-tauri/engine.rs: gate DredRecvState parse log, reconstruction log, classical PLC log, and DRED-counter fields in the Android recv heartbeat (non-verbose path still logs basic recv stats) - Tauri commands set_dred_verbose_logs / get_dred_verbose_logs - Settings panel gets a "DRED debug logs (verbose, dev only)" checkbox; preference persists in wzp-settings localStorage and is pushed to Rust on save and on app boot macOS mic permission: - Add desktop/src-tauri/Info.plist with NSMicrophoneUsageDescription. Without it, modern macOS silently denies CoreAudio capture for ad-hoc-signed Tauri builds — capture starts but every callback hands you zeros. Symptom: phones could not hear desktop client, desktop could still hear phones (playout has no TCC gate). The Tauri 2 bundler auto-merges this file into WarzonePhone.app's Contents/Info.plist on the next build, so first launch will pop the standard mic prompt. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
21
desktop/src-tauri/Info.plist
Normal file
21
desktop/src-tauri/Info.plist
Normal file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<!--
|
||||
Custom Info.plist keys merged into the bundled WarzonePhone.app by
|
||||
tauri-bundler. The base Info.plist (CFBundleIdentifier, version,
|
||||
etc.) is generated from tauri.conf.json — only put *additional*
|
||||
keys here.
|
||||
|
||||
NSMicrophoneUsageDescription is required by macOS TCC for any
|
||||
app that opens an audio input unit. Without this string the OS
|
||||
silently denies CoreAudio capture (input callbacks return zeros)
|
||||
and the app never appears in System Settings → Privacy &
|
||||
Security → Microphone. This was the root cause of the desktop
|
||||
mic regression where phones could not hear the desktop client.
|
||||
-->
|
||||
<key>NSMicrophoneUsageDescription</key>
|
||||
<string>WarzonePhone needs microphone access to transmit your voice during calls.</string>
|
||||
</dict>
|
||||
</plist>
|
||||
Reference in New Issue
Block a user