[fix](trx-frontend-http): start APRS on scheduler PKT channels
Carry bookmark decoder kinds through visible scheduler virtual channels so PKT/APRS scheduler entries start their decode workers instead of acting as audio-only channels. Verification: cargo test -p trx-frontend-http vchan Verification: cargo test -p trx-client (fails in existing config::tests::test_default_config) Co-authored-by: OpenAI Codex <codex@openai.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -2335,7 +2335,7 @@ async fn handle_audio_client(
|
||||
match cmd {
|
||||
VChanCmd::Subscribe { uuid, pcm_rx, send_audio, background_decode } => {
|
||||
let mut handles = Vec::new();
|
||||
let is_hidden = background_decode.is_some();
|
||||
let is_hidden = !send_audio;
|
||||
|
||||
if let Ok(mut guard) = hidden_channels_for_rx.lock() {
|
||||
if is_hidden {
|
||||
@@ -2345,6 +2345,12 @@ async fn handle_audio_client(
|
||||
}
|
||||
}
|
||||
|
||||
if let Some(existing_handles) = vchan_tasks.remove(&uuid) {
|
||||
for handle in existing_handles {
|
||||
handle.abort();
|
||||
}
|
||||
}
|
||||
|
||||
if send_audio {
|
||||
// Spin up an async Opus encoder task for this virtual channel.
|
||||
let frame_tx = vchan_frame_tx.clone();
|
||||
@@ -2600,7 +2606,7 @@ async fn handle_audio_client(
|
||||
uuid,
|
||||
pcm_rx,
|
||||
send_audio: !hidden,
|
||||
background_decode: hidden.then_some(BackgroundDecodeSpec {
|
||||
background_decode: (!decoder_kinds.is_empty()).then_some(BackgroundDecodeSpec {
|
||||
base_freq_hz: freq_hz,
|
||||
decoder_kinds,
|
||||
}),
|
||||
|
||||
Reference in New Issue
Block a user