Skip to content

Decouple slice audio mute from TCI audio routing (#1179)#1244

Closed
aethersdr-agent[bot] wants to merge 1 commit into
mainfrom
aetherclaude/issue-1179
Closed

Decouple slice audio mute from TCI audio routing (#1179)#1244
aethersdr-agent[bot] wants to merge 1 commit into
mainfrom
aetherclaude/issue-1179

Conversation

@aethersdr-agent

Copy link
Copy Markdown
Contributor

Summary

Fixes #1179


Generated by AetherClaude (automated agent for AetherSDR)

Slice audio_mute was sent to the radio firmware, which silenced the
VITA-49 audio stream for both PC speakers and TCI clients.  Now muting
is handled locally in AudioEngine (QAudioSink volume = 0) so the radio
keeps streaming audio and TCI clients receive un-muted audio
independently of the PC speaker state.

- SliceModel::setAudioMute no longer sends audio_mute to the radio
- AudioEngine gains setSliceMuted() for local speaker-only muting
- MainWindow wires active slice mute → AudioEngine on slice switch
- TCI cmdMute/cmdRxMute no longer call setAudioMute on the slice
- Radio-reported audio_mute=1 is cleared on startup to keep stream live

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@aethersdr-agent aethersdr-agent Bot mentioned this pull request Apr 13, 2026
2 tasks
@aethersdr-agent

Copy link
Copy Markdown
Contributor Author

CI Build Failure Analysis

Hey @aethersdr-agent[bot] — thanks for working on #1179, the slice mute decoupling! The approach looks solid. Here's what's going on with CI.

What failed

Both the build and analyze (cpp) jobs failed at the Build (compilation) step. The code in this PR itself looks correct — I reviewed all the changes across AudioEngine, TciProtocol, SliceModel, and MainWindow and don't see any syntax or type errors.

Root cause: stale merge base

This PR branched from f27b7f1 (Bundle libmosquitto source). Since then, main received several CI build fixes for the bundled mosquitto library that this branch doesn't have yet:

Commit Fix
517c4a2 Stub cJSON header in bundled mosquitto
0643620 Stub all cJSON includes in bundled mosquitto
c703055 Fix Windows/macOS builds for bundled mosquitto
3c2ed4c Define LIBMOSQUITTO_STATIC for Windows static linking

These are all CI infrastructure fixes — not related to your code at all. The main HEAD (3c2ed4c) passes all platform builds (Linux AppImage, macOS DMG, Windows).

How to fix

Rebase onto the latest main:

git fetch origin main
git rebase origin/main
git push --force-with-lease

No merge conflicts expected — I verified the merge is clean. Once rebased, CI should pick up the mosquitto build fixes and your PR should pass.

About the PR code

I reviewed the changes and everything looks correct:

  • AudioEngine::setSliceMuted() / m_sliceMuted atomic — follows the same pattern as the existing setMuted() / m_muted
  • The connect() wiring in MainWindow::setActiveSlice() properly disconnects the previous connection before reconnecting
  • TciProtocol::cmdMute() / cmdRxMute() — the removed setAudioMute() calls are correctly replaced with informational-only behavior
  • SliceModel::applyStatus() — clearing audio_mute=1 from the radio on startup makes sense to keep the VITA-49 stream flowing

This is a CI infrastructure issue, not a problem with your code. A rebase should get you green. 🟢

@ten9876

ten9876 commented Apr 14, 2026

Copy link
Copy Markdown
Collaborator

Claude here — deferring this one. The underlying issue (slice mute kills TCI audio) is real, but the fix needs a design decision about how TCI audio should be sourced. The current PR fights radio state by forcing audio_mute=0, which breaks Multi-Flex. The right path is likely DAX-backed TCI audio, but that has UX implications around mic TX routing. Filing as a design issue for future work.

73, Jeremy KK7GWY & Claude (AI dev partner)

@ten9876 ten9876 closed this Apr 14, 2026
@ten9876 ten9876 deleted the aetherclaude/issue-1179 branch April 18, 2026 04:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TCI Routing on Win11x64

2 participants