diff --git a/src/trx-server/src/audio.rs b/src/trx-server/src/audio.rs index 1771305..142ab1f 100644 --- a/src/trx-server/src/audio.rs +++ b/src/trx-server/src/audio.rs @@ -295,6 +295,7 @@ fn run_capture( let mut encoder = opus::Encoder::new(sample_rate, opus_channels, opus::Application::Audio)?; encoder.set_bitrate(opus::Bitrate::Bits(bitrate_bps as i32))?; + encoder.set_complexity(5)?; // Start paused — only capture when clients are connected info!( diff --git a/src/trx-server/src/config.rs b/src/trx-server/src/config.rs index d99dc3f..ce5cd1c 100644 --- a/src/trx-server/src/config.rs +++ b/src/trx-server/src/config.rs @@ -267,7 +267,7 @@ impl Default for AudioConfig { sample_rate: 48000, channels: 2, frame_duration_ms: 20, - bitrate_bps: 192000, + bitrate_bps: 256000, } } } diff --git a/src/trx-server/src/main.rs b/src/trx-server/src/main.rs index 74f5b94..7b3439a 100644 --- a/src/trx-server/src/main.rs +++ b/src/trx-server/src/main.rs @@ -519,6 +519,9 @@ fn spawn_rig_audio_stack( if let Err(e) = encoder.set_bitrate(opus::Bitrate::Bits(sdr_bitrate_bps as i32)) { tracing::warn!("SDR audio: set_bitrate failed: {}", e); } + if let Err(e) = encoder.set_complexity(5) { + tracing::warn!("SDR audio: set_complexity failed: {}", e); + } let mut opus_buf = vec![0u8; 4096]; loop { match sdr_rx.recv().await {