polymeilex / neothesia Goto Github PK
View Code? Open in Web Editor NEWFlashy Synthesia Like Software For Linux,Windows and MacOs
License: GNU General Public License v3.0
Flashy Synthesia Like Software For Linux,Windows and MacOs
License: GNU General Public License v3.0
When I run the app, choose a midi and play it, I don't get any sound. Apart from #6 the visual part works just fine, just no audio.
On the sound settings of ubuntu I see ALSA plug-in [neothesia] so I would expect some sound. But nothing...
My ALSA usually works, when I run for testing aplay /usr/share/sounds/alsa/Front_Center.wav
everything seems ok.
Any idea why I get no sound from neothesia?
I also tried different midi files and soundfonts, but no change.
OS: Ubuntu 20.04
I downloaded the 0.0.14. release (https://github.com/PolyMeilex/Neothesia/releases/download/v0.0.14/ubuntu-artifact.zip)
Many thanks in advance
Dealbreaker (sarcasm)
The audio clips really badly for a good while, though it might not even be your app's fault maybe you can at least reproduce it...
Not sure if this site is 100% legit, but I got it here: https://musical-artifacts.com/artifacts/2960
Crashes upon open in Catalina.
We need to have a way to replay given measure, without messing with manual rewind. So either add a way to rewind by measure, or introduce some sort of auto looping of given measures.
problem
no audio output
step
cd ~/Downloads
curl -LOC https://github.com/PolyMeilex/Neothesia/releases/download/v0.1.0/macos-artifact.zip
unzip macos-artifact.zip
open Neothesia.app
- select midi file
- select output = buildin synth and soundfont
- then play
problem no neothesia-cli
ls -la ~/Downloads/Neothesia.app/Contents/MacOS
expectation result
best regards
https://polymeilex.github.io/Neothesia/ needs proper design
Try playing this Rush E MIDI:
output.zip
Optional Feature: Different songs use a different amount of the piano. no point in showing all 88 keys if the song doesn't use it all. some such as myself may see it as a waste of screen real estate. Would be a cool feature to have it show "Only song keys" + a user defined number of padding keys or to next C.
Can't load sf2 in neothesia-cli
. /out/video.mp4
How do I include sound in exported video?
How? This feature would be really helpful for beginners, like me.
Is it just me? I've tried playing several midi files, but the chords are represented by single, non-sustaining notes that are not played in the audio part, nor do they activate the key on the keyboard visually. The midi file I used was from an inline sequencer, but does work with other visualizers
Sorry if this was a bad summary first time on Github xP
On master (d724865), the text on the GUI is missing, e.g. all the buttons, select menus but now the hints for what key plays what note. Therefore I guess, assuming that Neothesia renders the note hints, not iced, that this is an issue with iced.
The previous issue about this seems to have fixed this by switching to DX12. I am on Linux so this application should only be able to run on Vulkan on my system.
Screenshots of what it looks like:
This doesn't occur on 0.0.16 and for 1.0.0, I can't get it building in nixpkgs (NixOS/nixpkgs#256882).
run cargo build --release --no-default-features --features record
, it turns:
Compiling ffmpeg-sys v4.3.3
error: failed to run custom build command for `ffmpeg-sys v4.3.3`
Caused by:
process didn't exit successfully: `C:\tridu33\mymidi\ReactMidiPlayers\Neothesia\target\release\build\ffmpeg-sys-84f31d4dbb84e5a1\build-script-build` (exit code: 101)
--- stdout
cargo:rustc-link-search=native=C:\tridu33\mymidi\ReactMidiPlayers\Neothesia\target\release\build\ffmpeg-sys-92a0d0343867013d\out\dist\lib
cargo:rustc-link-lib=static=avcodec
cargo:rustc-link-lib=static=avformat
cargo:rustc-link-lib=static=avutil
cargo:rustc-link-lib=static=swscale
--- stderr
Using stack size: Ok(3145728)
Cloning into 'ffmpeg-4.3'...
Updating files: 100% (7327/7327), done.
thread 'ffmpg-sys-build' panicked at '"C:\\tridu33\\mymidi\\ReactMidiPlayers\\Neothesia\\target\\release\\build\\ffmpeg-sys-92a0d0343867013d\\out\\ffmpeg-4.3\\configure" "--prefix=C:\\tridu33\\mymidi\\ReactMidiPlayers\\Neothesia\\target\\release\\build\\ffmpeg-sys-92a0d0343867013d\\out\\dist" "--enable-debug" "--disable-stripping" "--disable-optimizations" "--enable-static" "--disable-shared" "--enable-pic" "--disable-autodetect" "--disable-programs" "--disable-gpl" "--disable-version3" "--disable-nonfree" "--enable-avcodec" "--disable-avdevice" "--disable-avfilter" "--enable-avformat" "--disable-avresample" "--disable-postproc" "--disable-swresample" "--enable-swscale" failed', C:\Users\tridu33\.cargo\registry\src\github.com-1ecc6299db9ec823\ffmpeg-sys-4.3.3\build.rs:337:29
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Any { .. }', C:\Users\tridu33\.cargo\registry\src\github.com-1ecc6299db9ec823\ffmpeg-sys-4.3.3\build.rs:629:10
I have rust 1.64, trying to build neothesia-cli from latest commit. This is my output:
$ make build-recorder
cargo build --release --no-default-features --features record
Compiling autocfg v1.1.0
Compiling cfg-if v1.0.0
Compiling libc v0.2.132
Compiling proc-macro2 v1.0.43
Compiling quote v1.0.21
Compiling unicode-ident v1.0.3
Compiling pkg-config v0.3.25
Compiling bitflags v1.3.2
Compiling syn v1.0.99
Compiling version_check v0.9.4
Compiling once_cell v1.13.1
Compiling log v0.4.17
Compiling cc v1.0.73
Compiling scopeguard v1.1.0
Compiling memchr v2.5.0
Compiling smallvec v1.9.0
Compiling xml-rs v0.8.4
Compiling crossbeam-utils v0.8.11
Compiling lazy_static v1.4.0
Compiling parking_lot_core v0.9.3
Compiling cty v0.2.2
Compiling rayon-core v1.9.3
Compiling rustc-hash v1.1.0
Compiling termcolor v1.1.3
Compiling glob v0.3.0
Compiling unicode-width v0.1.9
Compiling crc32fast v1.3.2
Compiling ash v0.37.0+1.3.209
Compiling minimal-lexical v0.2.1
Compiling scoped-tls v1.0.0
Compiling khronos-egl v4.1.0
Compiling downcast-rs v1.2.0
Compiling bit-vec v0.6.3
Compiling unicode-xid v0.2.3
Compiling cfg_aliases v0.1.1
Compiling adler32 v1.2.0
Compiling hexf-parse v0.2.1
Compiling byteorder v1.4.3
Compiling adler v1.0.2
Compiling regex-syntax v0.6.27
Compiling strsim v0.8.0
Compiling vec_map v0.8.2
Compiling arrayref v0.3.6
Compiling bindgen v0.58.1
Compiling ttf-parser v0.15.2
Compiling humantime v2.1.0
Compiling foreign-types-shared v0.3.1
Compiling ansi_term v0.12.1
Compiling inplace_it v0.3.4
Compiling glow v0.11.2
Compiling renderdoc-sys v0.7.1
Compiling profiling v1.0.6
Compiling futures-core v0.3.23
Compiling arrayvec v0.7.2
Compiling either v1.8.0
Compiling futures-channel v0.3.23
Compiling ppv-lite86 v0.2.16
Compiling shlex v1.1.0
Compiling ab_glyph_rasterizer v0.1.5
Compiling futures-task v0.3.23
Compiling copyless v0.1.5
Compiling arrayvec v0.5.2
Compiling lazycell v1.3.0
Compiling peeking_take_while v0.1.2
Compiling futures-sink v0.3.23
Compiling futures-util v0.3.23
Compiling serde_derive v1.0.143
Compiling xi-unicode v0.3.0
Compiling pin-project-lite v0.2.9
Compiling serde v1.0.143
Compiling futures-io v0.3.23
Compiling percent-encoding v2.1.0
Compiling linked-hash-map v0.5.6
Compiling pin-utils v0.1.0
Compiling static_assertions v1.1.0
Compiling memalloc v0.1.0
Compiling base64 v0.13.0
Compiling piano-math v0.1.0 (/home/matheus/Programs/Neothesia/piano-math)
Compiling fps_ticker v1.0.0
Compiling gpu-alloc-types v0.2.0
Compiling gpu-descriptor-types v0.1.1
Compiling wgpu-types v0.13.2
Compiling libloading v0.7.3
Compiling instant v0.1.12
Compiling ahash v0.7.6
Compiling slotmap v1.0.6
Compiling nom v5.1.2
Compiling memoffset v0.6.5
Compiling num-traits v0.2.15
Compiling crossbeam-epoch v0.9.10
Compiling lock_api v0.4.7
Compiling indexmap v1.9.1
Compiling rayon v1.5.3
Compiling num-integer v0.1.45
Compiling slab v0.4.7
Compiling num-bigint v0.4.3
Compiling num-rational v0.4.1
Compiling num-iter v0.1.43
Compiling wayland-sys v0.29.4
Compiling servo-fontconfig-sys v5.1.0
Compiling crossfont v0.5.0
Compiling smithay-client-toolkit v0.16.0
Compiling x11-dl v2.20.0
Compiling alsa-sys v0.3.1
Compiling cmake v0.1.48
Compiling raw-window-handle v0.4.3
Compiling raw-window-handle v0.5.0
Compiling codespan-reporting v0.11.1
Compiling wgpu-core v0.13.2
Compiling clang-sys v1.3.3
Compiling bit-set v0.5.3
Compiling deflate v1.0.0
Compiling miniz_oxide v0.5.3
Compiling textwrap v0.11.0
Compiling fxhash v0.2.1
Compiling owned_ttf_parser v0.15.1
Compiling gpu-alloc v0.5.3
Compiling dlib v0.5.0
Compiling freetype-sys v0.13.1
Compiling expat-sys v2.1.6
Compiling ab_glyph v0.2.16
Compiling nom v7.1.1
Compiling aho-corasick v0.7.18
Compiling png v0.17.5
Compiling crossbeam-channel v0.5.6
Compiling atty v0.2.14
Compiling which v3.1.1
Compiling num_cpus v1.13.1
Compiling getrandom v0.2.7
Compiling nix v0.22.3
Compiling nix v0.24.2
Compiling memmap2 v0.5.7
Compiling nix v0.23.1
Compiling mio v0.8.4
Compiling regex v1.6.0
Compiling spirv v0.2.0+1.5.4
Compiling approx v0.5.1
Compiling num-complex v0.4.2
Compiling ordered-float v3.0.0
Compiling clap v2.34.0
Compiling xcursor v0.3.4
Compiling rand_core v0.6.3
Compiling cexpr v0.4.0
Compiling crossbeam-deque v0.8.2
Compiling parking_lot v0.12.1
Compiling freetype-rs v0.26.0
Compiling wayland-commons v0.29.4
Compiling wayland-scanner v0.29.4
Compiling env_logger v0.9.0
Compiling alsa v0.6.0
Compiling glyph_brush_layout v0.2.3
Compiling env_logger v0.8.4
Compiling hashbrown v0.12.3
Compiling rand_chacha v0.3.1
Compiling servo-fontconfig v0.5.1
Compiling wayland-client v0.29.4
Compiling wayland-protocols v0.29.4
Compiling midir v0.8.0
Compiling gpu-descriptor v0.2.3
Compiling rand v0.8.5
Compiling midi-io v0.1.0 (/home/matheus/Programs/Neothesia/midi-io)
Compiling num v0.4.0
Compiling thiserror-impl v1.0.32
Compiling bytemuck_derive v1.2.1
Compiling foreign-types-macros v0.2.2
Compiling futures-macro v0.3.23
Compiling midi v0.1.0
Compiling twox-hash v1.6.3
Compiling foreign-types v0.5.0
Compiling bytemuck v1.12.1
Compiling thiserror v1.0.32
Compiling glyph_brush_draw_cache v0.1.5
Compiling midly v0.5.2
Compiling tiny-skia-path v0.7.0
Compiling safe_arch v0.5.2
Compiling naga v0.9.0
Compiling calloop v0.10.1
Compiling wayland-cursor v0.29.4
Compiling ffmpeg-sys v4.3.3
Compiling glyph_brush v0.7.5
Compiling lib-midi v0.1.0 (/home/matheus/Programs/Neothesia/lib-midi)
Compiling tiny-skia v0.7.0
Compiling futures-executor v0.3.23
Compiling wgpu-hal v0.13.2
Compiling futures v0.3.23
Compiling ron v0.8.0
Compiling sctk-adwaita v0.4.2
Compiling winit v0.27.2
Compiling wgpu v0.13.1
Compiling wgpu-jumpstart v0.1.0 (/home/matheus/Programs/Neothesia/wgpu-jumpstart)
Compiling wgpu_glyph v0.17.0
Compiling mpeg_encoder v0.2.1 (https://github.com/PolyMeilex/mpeg_encoder_next.git#0af42319)
error[E0432]: unresolved import `ffmpeg_sys::AVPicture`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:16:77
|
16 | AVCodec, AVCodecContext, AVCodecID, AVFormatContext, AVFrame, AVPacket, AVPicture,
| ^^^^^^^^^ no `AVPicture` in the root
error[E0425]: cannot find function `av_register_all` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:105:29
|
105 | ffmpeg_sys::av_register_all();
| ^^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `avpicture_fill` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:213:33
|
213 | let _ = ffmpeg_sys::avpicture_fill(
| ^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `avcodec_encode_video2` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:256:31
|
256 | ret = ffmpeg_sys::avcodec_encode_video2(
| ^^^^^^^^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `av_free_packet` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:271:29
|
271 | ffmpeg_sys::av_free_packet(&mut pkt);
| ^^^^^^^^^^^^^^ help: a function with a similar name exists: `av_get_packet`
|
::: /home/matheus/Programs/Neothesia/target/release/build/ffmpeg-sys-de143891d3f506c6/out/bindings.rs:16999:5
|
16999 | / pub fn av_get_packet(s: *mut AVIOContext, pkt: *mut AVPacket, size: libc::c_int)
17000 | | -> libc::c_int;
| |______________________- similarly named function `av_get_packet` defined here
error[E0425]: cannot find function `avpicture_get_size` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:490:44
|
490 | let nframe_bytes = ffmpeg_sys::avpicture_get_size(
| ^^^^^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `avpicture_fill` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:500:33
|
500 | let _ = ffmpeg_sys::avpicture_fill(
| ^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `avcodec_encode_video2` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:574:39
|
574 | ret = ffmpeg_sys::avcodec_encode_video2(
| ^^^^^^^^^^^^^^^^^^^^^ not found in `ffmpeg_sys`
error[E0425]: cannot find function `av_free_packet` in crate `ffmpeg_sys`
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:590:37
|
590 | ffmpeg_sys::av_free_packet(&mut pkt);
| ^^^^^^^^^^^^^^ help: a function with a similar name exists: `av_get_packet`
|
::: /home/matheus/Programs/Neothesia/target/release/build/ffmpeg-sys-de143891d3f506c6/out/bindings.rs:16999:5
|
16999 | / pub fn av_get_packet(s: *mut AVIOContext, pkt: *mut AVPacket, size: libc::c_int)
17000 | | -> libc::c_int;
| |______________________- similarly named function `av_get_packet` defined here
Compiling neothesia-pipelines v0.1.0 (/home/matheus/Programs/Neothesia/neothesia-pipelines)
error[E0308]: mismatched types
--> /home/matheus/.cargo/git/checkouts/mpeg_encoder_next-5ec055f06f12982c/0af4231/src/lib.rs:332:21
|
332 | codec = ffmpeg_sys::avcodec_find_encoder((*fmt).video_codec);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
|
= note: expected raw pointer `*mut AVCodec`
found raw pointer `*const AVCodec`
Some errors have detailed explanations: E0308, E0425, E0432.
For more information about an error, try `rustc --explain E0308`.
error: could not compile `mpeg_encoder` due to 10 previous errors
warning: build failed, waiting for other jobs to finish...
make: *** [makefile:7: build-recorder] Error 101
If so, how?
I can play along, when I don't press a note on time the music stops, when I press it then it continues to the next note... but how do I go backwards and rewind to practice a section again? I press the right cursor and it fast forwards, but the left seems to do nothing? Sorry if I missed something basic, thanks!
PS Look forward to the new version on Flathub, seems there has been quite a bit of work done since the last one.
For accessibility and convenience, I think it would be good to either have on-screen buttons to perform the actions described in the FAQ, or at least a togglable panel that shows the keyboard shortcuts within the program.
In the same vein, if you could map the numpad Enter to do the same thing as the main Enter key, that would be really helpful for me since it’s easier to reach while I’m front of my midi keyboard next to the computer :)
The best thing would be if there was a play-along mode where you can play and the midi waits for you, just like in synthesia. I might eventually learn ruby to help you program this, but I don't have a lot of time and I'm more comfortable with Python (in which I wrote my own cli midi player)
Add customizable visual effects
First of all, I'm not familiar with the Rust programming language to say if this is out of the scope of the project in terms of difficulty or something, and I really don't have have experience programming alongside other outside of school assignments, so, excuse me if I come across as pushy or something, I don't really know how to suggest things apparently...
At risk to be compared to other similar software solutions like Synthesia, Linthesia, SeeMusic, PianoFromAbove, Musicove, Symphonium, Keysight, and many, many more.
Well, as the title says, my suggestion is adding a little bit of flare in the form of customizable visual effects, feature which in my humble opinion will grant this project a HUMUNGUS advantage over others, you see, SeeMusic and Keysight have some visual effects in them, but they are not fully customizable, they are somewhat predetermined by their respective developers, but, as any open source project, we (or more accurately, you, following my advice, as I said, I don't know much about Rust) can make that and more.
Suggestions about a possible implementation
Without further ado, I put this to your kind consideration, farewell~
Distro: openSUSE tumbleweed
Version: 0.2.1
I recently built this app on obs successfully but the app does not work.
C:\Users\Honoka\Downloads>neothesia.exe
[2022-09-23T02:54:52Z INFO neothesia::scene::menu_scene::iced_menu] File path = "C:\\Users\\Honoka\\Downloads\\KiRa-KiRa Sensation!.mid"
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src\scene\menu_scene\iced_menu.rs:202:75
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Version 0.0.13
Hi, I was wondering what the maintainers of Neothesia think about adding support for e-drums.
I assume is just recognising the correct track for drums on the mid, and adding a way to map the midi to determinate notes.
Regarding the interface, would only show a few "keys" which are used in drums.
continue from #166 . if we enable jack feature in midir. it will use jack backend at all, and dont deal anything with alsa
blocked by Boddlnagg/midir#4
Specify a point in the song to start and end from for just recording one part of the song.
Current settings page is just an amalgamation of random buttons that I needed to add. Let's do a proper design for that page.
Current state of settings page: image
Early SVG draft of what I'm aiming for so far:
This obviously tries to follow Gnome HIG for boxed lists
Thank you for making this! An option to turn off certain tracks would be great for midi files that include so many instruments that it’s impossible to follow just one :)
As well as Surface pen. Maybe at least a keyboard mode for this to work without a mouse.
I am using Arch Linux and have my Volume at 100% (Make that 150, I HAVE OVERAMPLICATION.)
The sound, Even if the .sf2 is different, Is very quiet. But dont worry, There is a small amount of sound.
Please fix this error!
I have a library of 700+ midis and my default file picker is lagging like crazy when I try to load all of them. A native filepicker might be nice inside the application like synthesia has.
It would be a nice feature to add the number of Errors, and Notes, so we can monitor our progress.
When pausing while notes are being played, the highlighting of keys disappears.
Hello, I tried running Neothesia on my computer it crashes everytime, I even compiled it myself, it still crashes
The window decorations show for like half a second then it closes
I tried running the windows version on wine, it crashes at the start too
My system:
AMD Ryzen 5 2500U
Radeon Vega Mobile Gfx (8)
Ubuntu 20.04 with KDE on x11
Kernel: 5.12.0-051200-lowlatency
Mesa 21.1.0
The error message:
[2021-07-13T03:03:19Z INFO neothesia::wgpu_jumpstart::gpu] Using AMD RADV RAVEN (ACO) (Vulkan, Prefered Format: Some(Bgra8UnormSrgb))
wgpu error: Validation Error
Caused by:
In a RenderPass
note: encoder = `<CommandBuffer-(0, 2, Vulkan)>`
In a set_scissor_rect command
Invalid ScissorRect parameters
thread 'main' panicked at 'Handling wgpu errors as fatal by default', /home/boris/.cargo/registry/src/github.com-1ecc6299db9ec823/wgpu-0.8.1/src/backend/direct.rs:1955:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Segmentation fault
The error I get on wine running the Windows version:
55:err:vkd3d_load_vk_instance_procs: Could not get instance proc addr for 'vkGetPhysicalDeviceFragmentShadingRatesKHR'.
55:err:vkd3d_instance_init: Failed to load instance procs, hr 0x80004005.
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:50:61
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
I dont know what additional info to submit or how to run neothesia with RUST_BACKTRACE=1
environment variable
The default neothesia package did not run on my machine, as I use Linux Mint 19.x which relies upon Ubuntu 18.04
I faced these errors:
lordeagle@le-T450s:~/Downloads$ ./neothesia ./neothesia: /lib/x86_64-linux-gnu/libm.so.6: version
GLIBC_2.29' not found (required by ./neothesia)`
However, having forked this repo and let the build run on a 'ubuntu-18.04' node I get a copy that can be run.
https://github.com/ivy-rew/Neothesia/actions/runs/1008613870
Now, I get the following error. Any ideas what's missing?
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src/lib.rs:52:61
stack backtrace:
0: 0x565349af3e00 - std::backtrace_rs::backtrace::libunwind::trace::ha5edb8ba5c6b7a6c
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
1: 0x565349af3e00 - std::backtrace_rs::backtrace::trace_unsynchronized::h0de86d320a827db2
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x565349af3e00 - std::sys_common::backtrace::_print_fmt::h97b9ad6f0a1380ff
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys_common/backtrace.rs:67:5
3: 0x565349af3e00 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h14be7eb08f97fe80
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys_common/backtrace.rs:46:22
4: 0x565349b1767f - core::fmt::write::h2ca8877d3e0e52de
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/core/src/fmt/mod.rs:1094:17
5: 0x565349af1295 - std::io::Write::write_fmt::h64f5987220b618f4
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/io/mod.rs:1584:15
6: 0x565349af5edb - std::sys_common::backtrace::_print::h7f1a4097308f2e0a
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys_common/backtrace.rs:49:5
7: 0x565349af5edb - std::sys_common::backtrace::print::h1f799fc2ca7f5035
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys_common/backtrace.rs:36:9
8: 0x565349af5edb - std::panicking::default_hook::{{closure}}::hf38436e8a3ce1071
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:208:50
9: 0x565349af59ad - std::panicking::default_hook::he2f8f3fae11ed1dd
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:225:9
10: 0x565349af64ed - std::panicking::rust_panic_with_hook::h79a18548bd90c7d4
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:591:17
11: 0x565349af6087 - std::panicking::begin_panic_handler::{{closure}}::h212a72cc08e25126
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:497:13
12: 0x565349af429c - std::sys_common::backtrace::__rust_end_short_backtrace::hbd6897dd42bc0fcd
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/sys_common/backtrace.rs:141:18
13: 0x565349af5fe9 - rust_begin_unwind
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:493:5
14: 0x565349328611 - core::panicking::panic_fmt::h77ecd04e9b1dd84d
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/core/src/panicking.rs:92:14
15: 0x565349328703 - core::result::unwrap_failed::hcbdf25d28ce8f0ca
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/core/src/result.rs:1355:5
16: 0x5653493c30c3 - neothesia::init::hf9facb0026966c11
17: 0x56534938e2bf - neothesia::main::hca33bbc48aef2a0c
18: 0x56534939cb83 - std::sys_common::backtrace::__rust_begin_short_backtrace::h14fb5189f438c54d
19: 0x56534939cb99 - std::rt::lang_start::{{closure}}::h2ba87cd5fa13a1fa
20: 0x565349af69ea - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::hc4354216bf39217c
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/core/src/ops/function.rs:259:13
21: 0x565349af69ea - std::panicking::try::do_call::hb68eb312780385cf
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:379:40
22: 0x565349af69ea - std::panicking::try::h22b8e08595060b8b
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panicking.rs:343:19
23: 0x565349af69ea - std::panic::catch_unwind::hc64f1a6a0e71b1fc
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/panic.rs:431:14
24: 0x565349af69ea - std::rt::lang_start_internal::h4461fc58637f04f8
at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b/library/std/src/rt.rs:34:21
25: 0x56534938e532 - main
26: 0x7f7edac15bf7 - __libc_start_main
27: 0x565349328d8a - _start
28: 0x0 - <unknown>
lordeagle@le-T450s:~/Downloads$ neofetch
MMMMMMMMMMMMMMMMMMMMMMMMMmds+. lordeagle@le-T450s
MMm----::-://////////////oymNMd+` ------------------
MMd /++ -sNMd: OS: Linux Mint 19.3 Tricia x86_64
MMNso/` dMM `.::-. .-::.` .hMN: Host: 20BWS02D00 ThinkPad T450s
ddddMMh dMM :hNMNMNhNMNMNh: `NMm Kernel: 5.4.0-77-generic
NMm dMM .NMN/-+MMM+-/NMN` dMM Uptime: 9 days, 11 hours, 4 mins
NMm dMM -MMm `MMM dMM. dMM Packages: 2785
NMm dMM -MMm `MMM dMM. dMM Shell: bash 4.4.20
NMm dMM .mmd `mmm yMM. dMM Resolution: 1920x1080
NMm dMM` ..` ... ydm. dMM DE: Cinnamon 4.4.8
hMM- +MMd/-------...-:sdds dMM WM: Mutter (Muffin)
-NMm- :hNMNNNmdddddddddy/` dMM WM Theme: Mint-Y-Dark-Sand (Mint-Y)
-dMNs-``-::::-------.`` dMM Theme: Mint-Y-Darker-Grey [GTK2/3]
`/dMNmy+/:-------------:/yMMM Icons: Mint-Y-Grey [GTK2/3]
./ydNMMMMMMMMMMMMMMMMMMMMM Terminal: gnome-terminal
.MMMMMMMMMMMMMMMMMMM CPU: Intel i7-5600U (4) @ 3.200GHz
GPU: Intel HD Graphics 5500
Memory: 6700MiB / 11881MiB
I run neothesia.exe and the program opens for 0.5s then close immidiately, this is my log:
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
D:\PortableApp\Synthesia>set RUST_BACKTRACE=1
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe -h
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe /?
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe --help
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>neothesia.exe -help
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
D:\PortableApp\Synthesia>set RUST_BACKTRACE=full
D:\PortableApp\Synthesia>neothesia.exe -help
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
0: 0x140461d9f - <unknown>
1: 0x14047aefa - <unknown>
2: 0x14045e9e9 - <unknown>
3: 0x1404645bb - <unknown>
4: 0x14046423b - <unknown>
5: 0x140464b69 - <unknown>
6: 0x140464a6d - <unknown>
7: 0x140462727 - <unknown>
8: 0x140464749 - <unknown>
9: 0x1404a7ee5 - <unknown>
10: 0x1404a7ff3 - <unknown>
11: 0x13fea31fd - <unknown>
12: 0x13fe8a7db - <unknown>
13: 0x13fe59ea6 - <unknown>
14: 0x13fe5bcfc - <unknown>
15: 0x1404571b1 - <unknown>
16: 0x13fe8acf7 - <unknown>
17: 0x140482d50 - <unknown>
18: 0x76b259cd - BaseThreadInitThunk
19: 0x76d8383d - RtlUserThreadStart
D:\PortableApp\Synthesia>neothesia.exe
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: AdapterRequest', src\lib.rs:73:61
stack backtrace:
0: 0x13f8e1d9f - <unknown>
1: 0x13f8faefa - <unknown>
2: 0x13f8de9e9 - <unknown>
3: 0x13f8e45bb - <unknown>
4: 0x13f8e423b - <unknown>
5: 0x13f8e4b69 - <unknown>
6: 0x13f8e4a6d - <unknown>
7: 0x13f8e2727 - <unknown>
8: 0x13f8e4749 - <unknown>
9: 0x13f927ee5 - <unknown>
10: 0x13f927ff3 - <unknown>
11: 0x13f3231fd - <unknown>
12: 0x13f30a7db - <unknown>
13: 0x13f2d9ea6 - <unknown>
14: 0x13f2dbcfc - <unknown>
15: 0x13f8d71b1 - <unknown>
16: 0x13f30acf7 - <unknown>
17: 0x13f902d50 - <unknown>
18: 0x76b259cd - BaseThreadInitThunk
19: 0x76d8383d - RtlUserThreadStart
D:\PortableApp\Synthesia>
Using Flatpak version (0.0.11)
PC Specs:
Fedora Workstation 34
Ryzen 5 1600AF
Radeon RX 570
flatpak terminal output
[2021-10-25T04:50:09Z INFO neothesia::wgpu_jumpstart::gpu] Using AMD RADV POLARIS10 (ACO) (Vulkan, Preferred Format: Some(Bgra8UnormSrgb))
[2021-10-25T04:50:12Z WARN neothesia] Outdated
[2021-10-25T04:50:12Z WARN neothesia] Outdated
[2021-10-25T04:50:12Z WARN neothesia] Outdated
I will try to compile the program to give better feedback tomorrow
PS C:\Users\Talos\Downloads> $env:RUST_BACKTRACE="full"
PS C:\Users\Talos\Downloads> ./neothesia
[2023-02-09T06:30:13Z INFO neothesia::scene::menu_scene::iced_menu] File path = "E:\\Dev\\Orpheus GM Current Release\\Demos\\J. Williams - Star Wars OST.mid"
[2023-02-09T06:30:19Z INFO neothesia::scene::menu_scene::iced_menu] Font path = "E:\\Dev\\Orpheus GM Current Release\\Orpheus_1.047e.sf2"
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ()', src\output_manager\synth_backend.rs:107:65
stack backtrace:
0: 0x7ff6f2dd6c52 - <unknown>
1: 0x7ff6f2df027b - <unknown>
2: 0x7ff6f2dd35fa - <unknown>
3: 0x7ff6f2dd699b - <unknown>
4: 0x7ff6f2dd9329 - <unknown>
5: 0x7ff6f2dd8faa - <unknown>
6: 0x7ff6f2dd9bb1 - <unknown>
7: 0x7ff6f2dd993d - <unknown>
8: 0x7ff6f2dd767f - <unknown>
9: 0x7ff6f2dd9600 - <unknown>
10: 0x7ff6f2e1eee5 - <unknown>
11: 0x7ff6f2e1f1f3 - <unknown>
12: 0x7ff6f28bead4 - <unknown>
13: 0x7ff6f2870724 - <unknown>
14: 0x7ff6f28b505d - <unknown>
15: 0x7ff6f2860421 - <unknown>
16: 0x7ff6f289de72 - <unknown>
17: 0x7ff6f286eea0 - <unknown>
18: 0x7ff6f27b0aa8 - <unknown>
19: 0x7ff6f27b426c - <unknown>
20: 0x7ff6f27b265b - <unknown>
21: 0x7ff6f27b1cce - <unknown>
22: 0x7ff6f27b3b79 - <unknown>
23: 0x7ff6f27b10ee - <unknown>
24: 0x7ff6f27ac155 - <unknown>
25: 0x7ffb2b63e7e8 - CallWindowProcW
26: 0x7ffb2b63e36c - DispatchMessageW
27: 0x7ffb2b650c23 - SendMessageTimeoutW
28: 0x7ffb2d5f0ef4 - KiUserCallbackDispatcher
29: 0x7ffb2acb1704 - NtUserDispatchMessage
30: 0x7ffb2b63e27a - DispatchMessageW
31: 0x7ff6f27aadc7 - <unknown>
32: 0x7ff6f277ea21 - <unknown>
33: 0x7ff6f2785b39 - <unknown>
34: 0x7ff6f2773ee6 - <unknown>
35: 0x7ff6f27ad14c - <unknown>
36: 0x7ff6f2dcc97e - <unknown>
37: 0x7ff6f27861ec - <unknown>
38: 0x7ff6f2df92cc - <unknown>
39: 0x7ffb2bce7614 - BaseThreadInitThunk
40: 0x7ffb2d5a26a1 - RtlUserThreadStart
PS C:\Users\Talos\Downloads>
The soundfont, and midi can be downloaded here:
https://musical-artifacts.com/artifacts/1213
This issue seems to only occur with large soundfonts.
environment
google colab
or
ubuntu (because the error is still on installation phase)
steps
!apt update
!apt install -y cargo ffmpeg
!git clone https://github.com/PolyMeilex/Neothesia
!cd Neothesia && cargo build --release -p neothesia-cli
result
error[E0658]: use of unstable library feature 'once_cell'
--> midi-file/src/program_track.rs:2:33
|
2 | use std::{collections::HashMap, sync::OnceLock, time::Duration};
| ^^^^^^^^^^^^^^
|
= note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information
error[E0658]: use of unstable library feature 'once_cell'
--> midi-file/src/program_track.rs:6:30
|
6 | static DEFAULT_PROGRAMS: OnceLock<HashMap<u8, u8>> = OnceLock::new();
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information
error[E0658]: use of unstable library feature 'once_cell'
--> midi-file/src/program_track.rs:6:58
|
6 | static DEFAULT_PROGRAMS: OnceLock<HashMap<u8, u8>> = OnceLock::new();
| ^^^^^^^^
|
= note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information
error[E0658]: use of unstable library feature 'once_cell'
--> midi-file/src/program_track.rs:6:58
|
6 | static DEFAULT_PROGRAMS: OnceLock<HashMap<u8, u8>> = OnceLock::new();
| ^^^^^^^^^^^^^
|
= note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information
error[E0658]: use of unstable library feature 'once_cell'
--> midi-file/src/program_track.rs:7:22
|
7 | DEFAULT_PROGRAMS.get_or_init(|| (0..16).map(|ch| (ch, 0)).collect())
| ^^^^^^^^^^^
|
= note: see issue #74465 <https://github.com/rust-lang/rust/issues/74465> for more information
For more information about this error, try `rustc --explain E0658`.
error: could not compile `midi-file` due to 5 previous errors
warning: build failed, waiting for other jobs to finish...
best regards
It would be really nice to have the option to display a horizontal separator after each measure, as well as a number of that measure.
Hi,
Is there support for MIDI Controller Keyboard? I wish to use the keys on my midi controller to interact with the midi in the program- is this possible? For reference, I am trying to achieve this with Arturia MiniLab MK2
Right now the recorder version uses a h264 profile which is incompatible with lossless compression https://trac.ffmpeg.org/wiki/Encode/H.264
This is quite bad as most people using that feature would want to edit these videos and thus will need to compress it again.
Hello,
I'm unable to render properly a midi song using cli. I'm on Ubuntu 22.04.
I compiled the application following the README commands:
cargo build --release --no-default-features --features record
Then I tried to render this file: la campanella
With this command:
./target/release/neothesia-cli ./campanella.mid
And here is the result:
This is the result in the console:
To really make Neothesia accessible to everyone, I think it should just live in the browser, we could forget about weird cross platform issues, GPU specific bugs, and just harness the power of plain old HTML + WebGL.
Imagine if you could share a midi file with just a special Neothesia player link.
Background shader uses "%" with floats so it does not work because of:
gfx-rs/naga#1266
For now background pipeline is disabled with an if statement:
Neothesia/src/scene/menu_scene/mod.rs
Line 46 in a0c51a0
Everytime when minimalize the window, it crash.
Here are the outputs from the terminal:
thread 'main' panicked at 'Error in Surface::configure: Both `Surface` width and height must be non-zero. Wait to recreate the `Surface` until the window has non-zero area.', C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\wgpu-0.14.2\src\backend\direct.rs:274:9
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.