Coder Social home page Coder Social logo

Comments (7)

RobDavenport avatar RobDavenport commented on June 14, 2024

Thanks for the issue report! I think this might be a driver or config issue, quick googling for ALSA lib pcm_dmix.c:999:(snd_pcm_dmix_open) unable to open slave comes up with some results.

ALSA is already included in arch iirc, but may not be configured correctly. Could you try these steps here? https://wiki.archlinux.org/title/Advanced_Linux_Sound_Architecture#Configuration

It's possible that your systems "Default device" or config isn't set up with what cpal wants to see as the default.

from gamercade_console.

s0lvent avatar s0lvent commented on June 14, 2024

I did actually configure a default device but now I've got a similar error, any ideas?


cargo run --bin editor
    Finished dev [unoptimized + debuginfo] target(s) in 0.13s
     Running `target/debug/editor`
Output Sample Rate: 44100
Output channels: 2
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: BackendSpecific { err: BackendSpecificError { description: "ALSA function 'snd_pcm_sw_params' failed with error 'EINVAL: Invalid argument'" } }', gamercade_sound_engine/src/sound_engine.rs:286:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

from gamercade_console.

s0lvent avatar s0lvent commented on June 14, 2024

Heres a backtrace, I'll run through this in my AM

cargo run --bin editor
    Finished dev [unoptimized + debuginfo] target(s) in 0.13s
     Running `target/debug/editor`
Output Sample Rate: 44100
Output channels: 2
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: BackendSpecific { err: BackendSpecificError { description: "ALSA function 'snd_pcm_sw_params' failed with error 'EINVAL: Invalid argument'" } }', gamercade_sound_engine/src/sound_engine.rs:286:14
stack backtrace:
   0:     0x56199a471100 - std::backtrace_rs::backtrace::libunwind::trace::h22157d54c25d05ad
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   1:     0x56199a471100 - std::backtrace_rs::backtrace::trace_unsynchronized::hf9a98b3986ed5962
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x56199a471100 - std::sys_common::backtrace::_print_fmt::h44f8a801ddb575b4
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x56199a471100 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h306abe8d5f5fb26d
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x56199a496c7e - core::fmt::write::h5a3c14feb177cc6f
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/fmt/mod.rs:1202:17
   5:     0x56199a46c235 - std::io::Write::write_fmt::h2fac6c752c3fce7e
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/io/mod.rs:1679:15
   6:     0x56199a472933 - std::sys_common::backtrace::_print::h17490259a7578aec
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x56199a472933 - std::sys_common::backtrace::print::h6dba4ce5923cf00b
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x56199a472933 - std::panicking::default_hook::{{closure}}::h25daedc6802fa9d1
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:295:22
   9:     0x56199a47261f - std::panicking::default_hook::hffec061dc0fa1a5a
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:314:9
  10:     0x56199a472fda - std::panicking::rust_panic_with_hook::h74e697c31d32505c
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:698:17
  11:     0x56199a472ed7 - std::panicking::begin_panic_handler::{{closure}}::hd0b9cdbd524ed365
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:588:13
  12:     0x56199a4715ac - std::sys_common::backtrace::__rust_end_short_backtrace::h3feb3f4e0604d329
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:138:18
  13:     0x56199a472bf2 - rust_begin_unwind
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:584:5
  14:     0x561999211423 - core::panicking::panic_fmt::h0f41ee9e7f6526dd
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/panicking.rs:142:14
  15:     0x561999211573 - core::result::unwrap_failed::hcc2e1d3dceac8edc
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/result.rs:1785:5
  16:     0x561999931453 - core::result::Result<T,E>::unwrap::h7887b681da51bffa
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/result.rs:1107:23
  17:     0x5619999224ff - gamercade_sound_engine::sound_engine::SoundEngine::new::h123457b2d63d5964
                               at /home/bread/hacking/gamercade_console/gamercade_sound_engine/src/sound_engine.rs:185:22
  18:     0x56199929b869 - editor::ui::audio::audio_editor::AudioEditor::new::ha25711e9e2c7e0f4
                               at /home/bread/hacking/gamercade_console/gamercade_editor/src/ui/audio/audio_editor.rs:43:32
  19:     0x56199929f4fb - <editor::ui::editor::Editor as core::default::Default>::default::h6c208c90a52937e2
                               at /home/bread/hacking/gamercade_console/gamercade_editor/src/ui/editor.rs:35:27
  20:     0x56199923e52f - editor::main::{{closure}}::h3c895eb462bc9750
                               at /home/bread/hacking/gamercade_console/gamercade_editor/src/main.rs:16:33
  21:     0x561999269078 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h0ef0d98513750ef5
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/ops/function.rs:248:5
  22:     0x5619999b909a - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8d12c58009368a9c
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/alloc/src/boxed.rs:1940:9
  23:     0x5619999ee41f - eframe::native::run::glow_integration::GlowWinitApp::new::h34b1beba808c0d0e
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:281:27
  24:     0x5619999ef6f5 - eframe::native::run::glow_integration::run_glow::{{closure}}::h0d7f2003ee1642cb
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:458:21
  25:     0x5619999de0b4 - eframe::native::run::with_event_loop::{{closure}}::h3bf67b2ddb567f75
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:84:9
  26:     0x5619999cff5c - std::thread::local::LocalKey<T>::try_with::hb0d7c8d6d17f10df
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/thread/local.rs:445:16
  27:     0x5619999cf89d - std::thread::local::LocalKey<T>::with::hd69639adb06898b8
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/thread/local.rs:421:9
  28:     0x5619999ddfb4 - eframe::native::run::with_event_loop::hafc4c995e626bd80
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:83:5
  29:     0x5619999ef54d - eframe::native::run::glow_integration::run_glow::he197bda88c1c0d51
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:456:13
  30:     0x5619999efaeb - eframe::run_native::hbd554bd51b969b58
                               at /home/bread/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/lib.rs:172:13
  31:     0x5619992230d6 - editor::main::h7196d524db352e78
                               at /home/bread/hacking/gamercade_console/gamercade_editor/src/main.rs:13:5
  32:     0x56199926ab5b - core::ops::function::FnOnce::call_once::h519354246c065b44
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/ops/function.rs:248:5
  33:     0x56199928a24e - std::sys_common::backtrace::__rust_begin_short_backtrace::hdddd38a998e83f1b
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/sys_common/backtrace.rs:122:18
  34:     0x5619992985b1 - std::rt::lang_start::{{closure}}::h0d8c27fed5f209b7
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/rt.rs:166:18
  35:     0x56199a46761f - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::hb8df718c68d68c9f
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/core/src/ops/function.rs:283:13
  36:     0x56199a46761f - std::panicking::try::do_call::h8dddef2304462fc6
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:492:40
  37:     0x56199a46761f - std::panicking::try::hdaa6cf91fc468afd
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:456:19
  38:     0x56199a46761f - std::panic::catch_unwind::he262720fe982b2af
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panic.rs:137:14
  39:     0x56199a46761f - std::rt::lang_start_internal::{{closure}}::h186c7eb03cc01e3d
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/rt.rs:148:48
  40:     0x56199a46761f - std::panicking::try::do_call::hd0289857f5ecb87d
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:492:40
  41:     0x56199a46761f - std::panicking::try::hb64e3846d05ca699
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panicking.rs:456:19
  42:     0x56199a46761f - std::panic::catch_unwind::hf7d3692bfaa54567
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/panic.rs:137:14
  43:     0x56199a46761f - std::rt::lang_start_internal::hf0658d13fdb512d4
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/rt.rs:148:20
  44:     0x56199929858a - std::rt::lang_start::h7ac7505b6b892255
                               at /rustc/432abd86f231c908f6df3cdd779e83f35084be90/library/std/src/rt.rs:165:17
  45:     0x561999223161 - main
  46:     0x7f331adf5290 - <unknown>
  47:     0x7f331adf534a - __libc_start_main
  48:     0x561999211755 - _start
                               at /build/glibc/src/glibc/csu/../sysdeps/x86_64/start.S:115
  49:                0x0 - <unknown>

from gamercade_console.

RobDavenport avatar RobDavenport commented on June 14, 2024

Ah! I might have an idea for whats causing this.

Could you try running the beep example from cpal? https://github.com/RustAudio/cpal/blob/master/examples/beep.rs

If that one works then its likely an issue where the sound engine is expecting f32 for the sample format hence building the stream fails.

from gamercade_console.

s0lvent avatar s0lvent commented on June 14, 2024

Indeed it worked!

from gamercade_console.

RobDavenport avatar RobDavenport commented on June 14, 2024

Thanks for testing! I'll try and get a patch up for this when I have time next, thankfully the cpal examples show what the problem is pretty clearly.

from gamercade_console.

RobDavenport avatar RobDavenport commented on June 14, 2024

hi @petab1te sorry for the wait, i've just pushed a change to main which I think solves this issue. could you checkit out when you get the chance?

from gamercade_console.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.