Replies: 1 comment
-
Hi @Ekolide, That's an interesting idea, and one that would be really easy to implement. Making this a compile time constant is as easy as: in main.rs: struct Opt {
#[structopt(short, long)]
record: bool,
#[structopt(short, long, default_value = "/usr/share/sounds/sf2/FluidR3_GM.sf2")]
sf2_file: String,
#[structopt(short, long, default_value = "67")]
prog_number: i32,
#[structopt(short, long, default_value = "./notemap.json")]
notemap_file: String,
#[structopt(short, long, default_value = "-14")]
transpose: i32,
+ #[structopt(short, long, default_value = "2")]
+ hardware_polling_rate_ms: u32,
} and further down... .expect("failed to halt system");
}
- const TICK_USECS: u32 = 2_000;
+ const TICK_USECS: u32 = opt.hardware_polling_rate_ms;
#[cfg(feature = "instrumentation")] |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi!
Currently, the Haxophone is very fast at sending new Note On messages. For example, going from a middle C fingering to a middle D fingering almost always causes the octave-up C note to trigger for me, as I engage the octave key. The same thing when going from a fingering that uses the octave key to one that doesn't. Similarly with going from B to C, the C# note will often trigger in-between for me.
I suggest a configuration setting where the user can modify how often the Haxophone updates, or how often it pushes hardware information through the system (or however the internals are set up). A config name could be
hardware-polling-rate
, assuming that modifying the hardware polling rate is a suitable solution. A value of 2 would divide the base rate by 2. A value of 3 would divide by 3, and so on. A value of 0 would be discarded and replaced with a value of 1, acting as "no change from default".In EWI world, it is common to offer a configurable "delay" feature like this to help the player avoid producing these unintentional notes. For me it makes the instrument feel more like it's following my intention. And that glitchy sound is really annoying and unsuitable for performance.
Let me know your thoughts.
Beta Was this translation helpful? Give feedback.
All reactions