frontend-common: prefer jack on linux

This commit is contained in:
Alex Janka 2024-05-30 15:51:02 +10:00
parent 101a0fc062
commit 62499865fa
3 changed files with 7 additions and 2 deletions

1
Cargo.lock generated
View file

@ -1122,6 +1122,7 @@ dependencies = [
"core-foundation-sys 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
"coreaudio-rs",
"dasp_sample",
"jack",
"jni",
"js-sys",
"libc",

View file

@ -15,7 +15,7 @@ wgpu = ["gb-emu-lib/wgpu-renderer"]
[dependencies]
gb-emu-lib = { workspace = true }
gilrs = "0.10"
cpal = "0.15"
cpal = { version = "0.15", features = ["jack"] }
futures = "0.3"
nokhwa = { version = "0.10", features = [
"input-avfoundation",

View file

@ -10,7 +10,11 @@ use crate::access_config;
const DOWNSAMPLE_TYPE: DownsampleType = DownsampleType::ZeroOrderHold;
pub fn create_output(muted: bool) -> (AudioOutput, Stream) {
let host = cpal::default_host();
let host = if cfg!(target_os = "linux") {
cpal::host_from_id(cpal::HostId::Jack).unwrap_or_else(|_| cpal::default_host())
} else {
cpal::default_host()
};
let device = host
.default_output_device()