VoiceKeys II v2.34

Realtime Monophonic Audio to MIDI Converter

(10 Votes)
2.34 (Updated 1 month ago)
April 23, 2018
Reaktor 6
Instrument Other


Converts audio signal (monophonic) to MIDI data, in realtime.
Switch to view B for additional controls.

ver 2.34 :
- 2 new features added (Note Rejector and Legacy Pitchbend mode), turn them on/off from the view B of the instrument
- heavily optimized autotune parts
- added 6 new autotune scales
- improved autotune stabilty
- lots of tweaks, slightly lower latency

ver 2.33 :
- added 7 new autotune scales
- major changes on several parts, slightly faster detection speed

ver 2.32b :
- minor tweaks on the note detection and MIDI transmitter part, slightly reduced latency
- now pitchbend is always zero at the beginning of a note

ver 2.32 :
- several changes, tweaks and optimizations, resulting in increased responsivity (less missed notes) and slightly improved detection speed

ver 2.3c :
- small changes on the note detection part, slightly lower latency

ver 2.3b :
- few tweaks on the MIDI transmitter part, slightly faster detection speed

ver 2.3 :
- few tweaks on the note detection part, slightly faster detection speed

ver 2.28b :
- fixed a bug that notes are breaking occasionally
- minor tweak on the note detection part and slightly improved detection speed
- better lower notes detection response

ver 2.28 :
- various changes, tweaks and bug fixes on the note detection part
- slightly faster detection speed

ver 2.27 :
- major changes on the note detection part, resulting in slightly lower latency and a much better lower notes detection

ver 2.26c :
- slightly reduced latency
- 'SRDiv' (Sample Rate divider) removed

ver 2.26b :
- minor tweak on detection speed and note transitions' stability

ver 2.26 :
- fixed some low notes are not detected problem
- lower latency when autotune is on, now it's the same as when it's off
- more responsive note transitions

ver 2.25 :
- VoicePiano is now integrated into (as the new piano trigger mode, turn it on/off by using 'Piano' button)

ver 2.24 :
- added 3 new autotune modes

ver 2.23b:
- fix for the highest note sometimes triggered incorrectly problem

ver 2.23 :
- major improvements on pitchbend tracking
- added 2 new autotune modes


Nicholas Johnstone
9 months ago
I made the hex version of fretkeys. That filter I mentioned works well for the pitch bend, as I see you've also done some filtering there. Just occasionally there are misreads. The thing I was wondering if you could help me with is- I am having trouble consistently reading notes 80-88. Is there anything you can do to help read these highest notes? Thanks so much
Bertrand Antolin
9 months ago
You're welcome ! I'm kinda surprised that FretKeys does better, because VoiceKeys actually has a much better triggering mechanism.. although FretKeys has the advantage of being lower on CPU. That's good news about the CPU usage, turns out it is much lower than i thought. If the artifact is really the highest note, then on 2.23b it's been fixed, so if you're still experiencing it then it's another error. That's strange that it only happens when pitchbend is on.. i'll wait for your audio and will do some testing using it.
Nicholas Johnstone
9 months ago
oh- just one more thing- did you see the conversation that you can join if you like at the forum here? No worries if you'd rather not get involved in my time intensive projects
Nicholas Johnstone
9 months ago
Thanks very much for letting me distribute. I am actually using FretKeys, because the note on/off behaviour is much better for guitar. I am using 24% of the Reaktor display for 6 of them to play all strings. It is 1.6% in Task Manager for the standalone Reaktor. I think you might be correct in your diagnosis, that it is a spurious highest note. I tried the filter, but I think it was at the wrong point in the signal chain. As far as I can tell, the artefact only happens when pitch bend is on. I will make some audio today and get back here, but again- you are probably right that it is the highest note thing
Bertrand Antolin
9 months ago
It's OK if you want to use VoiceKeys in your own ensemble, but i think the idea of using it for all strings will take lots of CPU..
Bertrand Antolin
9 months ago
Thanks for your reply Nix ! So it seems like it's not the highest note problem but something else that i'm unaware of... Thanks for the filter idea, i really appreciated it ! But i guess i can't fix it because it never happened to me.. Is there any chance that i could get an audio sample from your guitar, that triggers the artifact problem ?
Nicholas Johnstone
9 months ago
setting base to 28 helps a lot. maybe your surmise is more correct. the small artifact is still a little present though. High E tracks very well also- when base is 55
Nicholas Johnstone
9 months ago
thanks, no worries! I tried it and it's still similar to the first(prior) version. I think it is letting harmonic through on 'note off' a touch. I have an idea I have developed that might help. It could have a high pass at note pitch passband, with res .95. This filter's output could be subtracted from the audio stream. This helps get rid of harmonics a lot. 2 poles seems correct, and it may need to be mixed, not employed fully. TY for making this cool thing mate. Is it OK to distribute it with credit to you? I'll look for the fretkeys and try that one too. I'm looking forward to putting your build on all strings, not just low E. Perhaps the surmise that it(the artefact) is on note-off helps you
Bertrand Antolin
9 months ago
Nix, i've applied a fix on the high freq noises you've mentioned (on my test it's the highest note triggered incorrectly), could you please test it out and see if it's still there ? Thanks for letting me know about it !
Bertrand Antolin
9 months ago
You're welcome Nix ! Yes, it's still the same concept as FretKeys, using delays, but i've improved the method to be better at tracking vocals (i found the previous version of VoiceKeys is not too good at it). I honestly didn't test it much with guitar, but with vocals it tracks my voice down to low E correctly on my test. Seems like it's hard to get the tracking works for both vocals and guitar at the same time...
Nicholas Johnstone
9 months ago
Thanks Bertant! Nick here from FlowStone long ago. It looks too difficult for me to understand. Is this too based on delays? Could you possibly try and explain the concept? ty once more! I have tried it on bottom e of hex guitar. It's not perfect, but quite good(at tracking without flaw(little high freq noises))
Bertrand Antolin
1 year ago
I'm glad you enjoyed it ! Unfortunately latency is unavoidable when converting to MIDI (direct to synth will be much faster), I've tried my best to minimize it.
Greg Killmaster
1 year ago
Works great! Love being able to play my synths with my guitar now! Thanks a lot!. There is a little latency, but I would expect that.