diff --git a/src/trx-server/trx-backend/trx-backend-soapysdr/src/dsp.rs b/src/trx-server/trx-backend/trx-backend-soapysdr/src/dsp.rs index 4910e83..f292fd9 100644 --- a/src/trx-server/trx-backend/trx-backend-soapysdr/src/dsp.rs +++ b/src/trx-server/trx-backend/trx-backend-soapysdr/src/dsp.rs @@ -674,7 +674,16 @@ impl ChannelDsp { } *s = self.audio_agc.process(*s); } - raw + if self.output_channels >= 2 { + let mut stereo = Vec::with_capacity(raw.len() * self.output_channels); + for sample in raw { + stereo.push(sample); + stereo.push(sample); + } + stereo + } else { + raw + } }; // --- 5. Emit complete PCM frames ------------------------------------