feat: quality profile selection in desktop settings
Some checks failed
Mirror to GitHub / mirror (push) Failing after 35s
Build Release Binaries / build-amd64 (push) Failing after 1m58s

Adds a Quality dropdown (Auto / Opus 24k / Opus 6k / Codec2 3.2k /
Codec2 1.2k) to both the connect screen and settings panel. The
selected profile is passed through to the engine which configures
the encoder and decoder accordingly.

The desktop engine recv path now auto-switches the decoder codec
when incoming packets use a different codec than expected, enabling
cross-codec interop between clients on different quality settings.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Siavash Sameni
2026-04-07 17:44:17 +04:00
parent 96ccb4f333
commit 85c2146760
4 changed files with 91 additions and 20 deletions

View File

@@ -26,6 +26,15 @@
<label>Alias
<input id="alias" type="text" placeholder="your name" />
</label>
<label>Quality
<select id="quality">
<option value="auto">Auto</option>
<option value="good">Opus 24k</option>
<option value="degraded">Opus 6k</option>
<option value="codec2-3200">Codec2 3.2k</option>
<option value="catastrophic">Codec2 1.2k</option>
</select>
</label>
<div class="form-row">
<label class="checkbox">
<input id="os-aec" type="checkbox" checked />
@@ -91,6 +100,15 @@
</div>
<div class="settings-section">
<h3>Audio</h3>
<label>Quality
<select id="s-quality">
<option value="auto">Auto (adaptive)</option>
<option value="good">Good — Opus 24kbps</option>
<option value="degraded">Degraded — Opus 6kbps</option>
<option value="codec2-3200">Codec2 3200bps</option>
<option value="catastrophic">Catastrophic — Codec2 1200bps</option>
</select>
</label>
<label class="checkbox">
<input id="s-os-aec" type="checkbox" />
OS Echo Cancellation (macOS VoiceProcessingIO)