Comments (10)
I noticed some delay on fast hihat pedal stomps. I guess those cause the most MIDI messages to be created and can overwhelm the script. Since that happened on a rather fast machine I guess it won't work too well on a raspberry pi.
However I improved the script a bit in the latest version, so that it's harder to run into the issue.
Possibly multithreading might help, too.
EDIT: That was just a bug, which I just fixed. The script may just work fine on a raspberry pi.
In total I'm pretty happy with it so far.
from edrumulus.
Great :-). I have just added your repo as a sub-module in the edrumulus/tools directory.
from edrumulus.
However I observed in practice that cross talk spikes may actually arrive before the spike of the pad I actually hit
That is very interesting. I have not experienced such an issue with my setup.
Initially, I thought this would make no sense because if I hit a pad and this triggers another one, the pad which is hit should always be the first to trigger since it will take some time for the audio wave to travel from the original pad to the pad which give a false trigger. But this is just the view of the physics. It may happen that the pad configurations are different between the two pads (e.g. scan times) which can lead to the case that the original pad generates a MIDI signal after the other pad.
Hmm. As you wrote, introducing latency is not a good thing.
from edrumulus.
I was considering to fix it by piping the edrumulus Midi output to Ardour and using a Midi cross-talk cancellation plugin there, then pipe it to drumgizmo. I'm unsure how well that setup will perform though...
Also it seems that there's no such pre-made Midi plugin out there (I found a native one for Reaper, but that's it).
If drumgizmo had some sort of plugin support, it'd be possible to implement it there as well.
from edrumulus.
Interesting concept of using an external tool to mitigate cross-talk. If that works, other similar projects like, e.g., eXaDrums could also use it.
from edrumulus.
I'll test this filter for now.
from edrumulus.
Great. Please update us in this thread how it works and how happy you are with that solution.
from edrumulus.
Thanks for the feedback. Maybe it's now time that you create a post in this discussion thread ;-)
from edrumulus.
Fyi: I just fixed the code causing the aforementioned issue.
from edrumulus.
New repo: https://github.com/3hhh/xtalk
from edrumulus.
Related Issues (20)
- edrumuluscontrol.m: add midi in/out labels HOT 2
- Is Prototype 2 still supported/recommended? (get_prototype_pins) HOT 3
- Floating signal on disconnected ports HOT 12
- Analog circuit HOT 6
- spike cancellation looks like a local parameter, but is a global one HOT 7
- Disconnecting a rimshot input makes regular hits become rimshots HOT 23
- Rim signals may be too strong for edrumulus HOT 13
- Teensy: High pins don't work HOT 1
- Hihat stomp is weak and cannot be mixed alone HOT 3
- Pos sensing only works with middle piezo HOT 8
- edrumulus_gui.py removes trigger settings, if killed HOT 2
- cymbal choke causes rim triggers HOT 6
- hihat pedal cross-talk HOT 20
- Unable to run edrumulus_gui.py on Windows HOT 19
- Add video to readme HOT 3
- Bad cymbal rim dynamics HOT 6
- Idea: Test edrumulus on x64 hardware
- Direct piezo hits sometimes cause a MIDI mute HOT 5
- Half-open hihat play tends to cause soft pedal stomps HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from edrumulus.