diff options
Diffstat (limited to 'mumd/src/audio/output.rs')
| -rw-r--r-- | mumd/src/audio/output.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/mumd/src/audio/output.rs b/mumd/src/audio/output.rs index 2177fb2..2015435 100644 --- a/mumd/src/audio/output.rs +++ b/mumd/src/audio/output.rs @@ -180,6 +180,14 @@ impl DefaultAudioOutputDevice { let err_fn = |err| error!("An error occurred on the output audio stream: {}", err); let (output_volume_sender, output_volume_receiver) = watch::channel::<f32>(output_volume); + let output_channels = match output_config.channels { + 1 => opus::Channels::Mono, + 2 => opus::Channels::Stereo, + _ => { + warn!("Trying to output to an unsupported number of channels ({}), defaulting to mono", output_config.channels); + opus::Channels::Mono + } + }; let output_stream = match output_supported_sample_format { SampleFormat::F32 => output_device.build_output_stream( @@ -188,6 +196,7 @@ impl DefaultAudioOutputDevice { Arc::clone(&client_streams), output_volume_receiver, user_volumes, + output_channels, ), err_fn, ), @@ -197,6 +206,7 @@ impl DefaultAudioOutputDevice { Arc::clone(&client_streams), output_volume_receiver, user_volumes, + output_channels, ), err_fn, ), @@ -206,6 +216,7 @@ impl DefaultAudioOutputDevice { Arc::clone(&client_streams), output_volume_receiver, user_volumes, + output_channels, ), err_fn, ), |
