conundrumer / audioscope Goto Github PK
View Code? Open in Web Editor NEWaudio visualizers true to the sound
License: GNU General Public License v3.0
audio visualizers true to the sound
License: GNU General Public License v3.0
There's a lot more output on the command line beforehand. The application window opens and then closes immediately. Maybe it's using a bad gl version? Not that I know what gl is.
...
Pa_StartStream: waveInStart returned = 0x0.
thread 'main' panicked at 'gl function was not loaded', C:\Users\Dustin\Meine Dateien\Programme\audioscope-master\target\release\build\glium-6a0e6ba530832a0a\out/gl_bindings.rs:2506:13
stack backtrace:
!! 0: std::panicking::begin_panic
1: glium::version::get_gl_version
2: glium::version::get_gl_version
3: glium::context::Context::new
4: glium::backend::glutin_backend::<impl glium::DisplayBuild for glutin::WindowBuilder>::build_glium_debug
5: audioscope::display::display
6: core::ptr::drop_in_place<core::option::Option<std::sync::mpsc::stream::Message<()>>>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
WinMME StopStream: waiting for background thread.
TerminateHostApis in
TerminateHostApis out
error: process didn't exit successfully: `target\release\audioscope.exe config.toml` (exit code: 101)
Good day, very nice visualization! I've tried your javascript version and it works pretty well (connected it to existing
When following your directions, I had to manually install portaudio and once that was done, I ran cargo run --release -- config.toml
again and received this error below which I cannot figure out.
I tried updating with cargo update
and got a different error so I then ran cargo clean
and restored the Cargo.lock file and tried running cargo update -p core-graphics
and then using cargo run --release -- config.toml
again, but still without success.
I'm using macOS 10.13.3. Any ideas?
Error:
Blakes-MacBook-Pro:audioscope-master k$ cargo run --release -- config.toml
Compiling rustc-serialize v0.3.22
Compiling num-traits v0.1.36
Compiling winapi v0.2.8
Compiling pkg-config v0.3.8
Compiling backtrace v0.2.3
Compiling smallvec v0.1.8
Compiling bitflags v0.7.0
Compiling core-foundation-sys v0.2.2
Compiling winapi-build v0.1.1
Compiling gcc v0.3.39
Compiling lazy_static v0.2.2
Compiling bitflags v0.3.3
Compiling libc v0.2.18
Compiling rustc-demangle v0.1.3
Compiling cfg-if v0.1.0
Compiling serde v0.7.15
Compiling log v0.3.6
Compiling khronos_api v1.0.0
Compiling xml-rs v0.3.5
Compiling dbghelp-sys v0.2.0
Compiling kernel32-sys v0.2.2
Compiling shared_library v0.1.5
Compiling malloc_buf v0.0.6
Compiling rand v0.3.15
Compiling num-integer v0.1.32
Compiling objc v0.2.2
Compiling portaudio v0.7.0
Compiling num-iter v0.1.32
Compiling core-foundation v0.2.2
Compiling backtrace-sys v0.1.5
Compiling gl_generator v0.5.2
Compiling core-graphics v0.3.2
error: type `color_space::__CGColorSpace` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/context.rs:86:26
|
86 | let result = CGBitmapContextCreate(ptr::null_mut(),
| ^^^^^^^^^^^^^^^^^^^^^
error: type `color_space::__CGColorSpace` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/context.rs:91:48
|
91 | space.as_concrete_TypeRef(),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: type `color_space::__CGColorSpace` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/context.rs:149:37
|
149 | space: CGColorSpaceRef,
| ^^^^^^^^^^^^^^^
error: type `data_provider::__CGDataProvider` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/font.rs:106:28
|
106 | let font_ref = CGFontCreateWithDataProvider(provider.as_concrete_TypeRef());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: type `data_provider::__CGDataProvider` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/font.rs:106:57
|
106 | let font_ref = CGFontCreateWithDataProvider(provider.as_concrete_TypeRef());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: type `data_provider::__CGDataProvider` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/font.rs:137:47
|
137 | fn CGFontCreateWithDataProvider(provider: CGDataProviderRef) -> CGFontRef;
| ^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:19:13
|
19 | region: ffi::CGSRegionRef,
| ^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:25:13
|
25 | ffi::CGSRegionRelease(self.region)
| ^^^^^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:25:35
|
25 | ffi::CGSRegionRelease(self.region)
| ^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:34:30
|
34 | let mut region = ptr::null_mut();
| ^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:35:21
|
35 | assert!(ffi::CGSNewRegionWithRect(rect, &mut region) == 0);
| ^^^^^^^^^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:35:53
|
35 | assert!(ffi::CGSNewRegionWithRect(rect, &mut region) == 0);
| ^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:37:25
|
37 | region: region,
| ^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:45:30
|
45 | let mut region = ptr::null_mut();
| ^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:46:21
|
46 | assert!(ffi::CGSNewRegionWithRectList(rects.as_ptr(),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:48:51
|
48 | &mut region) == 0);
| ^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:50:25
|
50 | region: region,
| ^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:81:21
|
81 | assert!(ffi::CGSSetSurfaceShape(self.context_id,
| ^^^^^^^^^^^^^^^^^^^^^^^
error: type `private::ffi::CGSRegionObject` is private
--> /Users/k/.cargo/registry/src/github.com-1ecc6299db9ec823/core-graphics-0.3.2/src/private.rs:84:45
|
84 | region.region) == 0)
| ^^^^^^^^^^^^^
error: aborting due to 19 previous errors
error: Could not compile `core-graphics`.
warning: build failed, waiting for other jobs to finish...
error: build failed
I have compiled portaudio, but I still get the 'cannot find -lportaudio' error message. I tried building Rust wrappers for portaudio, but rust-portaudio gives me the error message that it can't build on Windows. I'm using Windows 10. I'm a bit clueless on building and compiling source code, but is there any way to make this work?
this is an incredible project!
i'm having some difficulty with the initial build on debian bullseye and debian buster with the rust stable toolchain.
i've manually installed the latest stable of libportaudio system wide as suggested:
Package: libportaudio2
Version: 19.6.0-1.1
Package: libportaudiocpp0
Version: 19.6.0-1.1
I am able to build rust-portaudio from Git (which appears to be 0.7.0):
$ git clone https://github.com/RustAudio/rust-portaudio
$ cd rust-portaudio
$ cargo build --release
[...]
Finished release [optimized] target(s) in 26.70s
however, while building (linking) audioscope, i receive the following error:
/usr/bin/ld: /home/user/src/audioscope/target/debug/deps/libportaudio-779a6df6781f5d0f.rlib(pa_jack.o): in function `PaJack_Initialize':
/home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/portaudio-0.7.0/portaudio/src/hostapi/jack/pa_jack.c:800: undefined reference to `jack_client_close'
/usr/bin/ld: /home/user/src/audioscope/target/debug/deps/libportaudio-779a6df6781f5d0f.rlib(pa_jack.o): in function `BuildDeviceList':
/home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/portaudio-0.7.0/portaudio/src/hostapi/jack/pa_jack.c:617: undefined reference to `jack_port_by_name'
/usr/bin/ld: /home/user/cargo/registry/src/github.com-1ecc6299db9ec823/portaudio-0.7.0/portaudio/src/hostapi/jack/pa_jack.c:619: undefined reference to `jack_port_get_latency'
/usr/bin/ld: /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/portaudio-0.7.0/portaudio/src/hostapi/jack/pa_jack.c:596: undefined reference to `jack_port_by_name'
/usr/bin/ld: /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/portaudio-0.7.0/portaudio/src/hostapi/jack/pa_jack.c:598: undefined reference to `jack_port_get_latency'
[...]
happy to provide any other information you need. thanks for releasing this!
= note: LINK : fatal error LNK1181: cannot open input file 'portaudio.lib'
error: aborting due to previous error
error: Could not compile audioscope
.
I cloned the repo. It doesn't compile. So I used the pull request to get past the obsolete package issues and got a compile. Then I learned enough Rust to clear the compiler warnings. So far, so good.
I believe I've got something wrong with portaudio. I did a fresh brew install and it said version 19.6.0, but Cargo.toml says 0.7.0. (Do the rust bindings nominally have a different version id?). Anyhow, it fails to init the audio as seen here...
Default input device name: MacBook Air Microphone
thread 'main' panicked at 'called Result::unwrap()
on an Err
value: InvalidChannelCount', src/main.rs:20:52
stack backtrace:
0: 0x108d0cbde - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h0afb3dc3ec8cd05f
1: 0x108d36e8e - core::fmt::write::h39441ef24fae20ea
2: 0x108d0c979 - std::io::Write::write_fmt::h2ffecc964e3c3ddd
3: 0x108d261d5 - std::panicking::default_hook::{{closure}}::h1a491655bcf6394f
4: 0x108d25efc - std::panicking::default_hook::h038c301fad559a62
5: 0x108d266e5 - std::panicking::rust_panic_with_hook::h489020cfd35413ea
6: 0x108d0d3fb - std::panicking::begin_panic_handler::{{closure}}::he498abc45ca35fbf
7: 0x108d0cd58 - std::sys_common::backtrace::__rust_end_short_backtrace::h4a2a0fae6b0989d8
8: 0x108d262c3 - _rust_begin_unwind
9: 0x108d42e8f - core::panicking::panic_fmt::h0003130af3c08aa0
10: 0x108d42f05 - core::result::unwrap_failed::hbfeca77107a6ab03
11: 0x108c83d94 - audioscope::main::h41e30bdadb922f57
12: 0x108c7cf0a - std::sys_common::backtrace::__rust_begin_short_backtrace::hbe09358cda164833
13: 0x108c6acfc - std::rt::lang_start::{{closure}}::hbb9f30209b9f1290
14: 0x108d2694c - std::rt::lang_start_internal::h0a88825a8a52fb96
15: 0x108c843b9 - _main
Please advise
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.