hi,
Im spending a bit of time working thru the open source code, and looking at how various bits work.
Today I was looking at decimation.
Im generally clear how it works (i think!).
It seems to be implemented in lib_midi
But then I kind of loose the usage a bit.
I can quite clearly see in midi_from_belcanto.cpp, it being used...
basically its using last_time_status, which is indexed by channel/status, and this is being checked and populated by check_time_status(channel,status,time) - fine thats all clear.
And I can see its usage in set_pitchbend, as would be expected.
BUT thats the only reference I can find to decimation, control interval .. or that function.
I would expect this function to be called for all data, not just pitch bend (e.g. if im using yaw say on a mod wheel, or breath etc etc)
Im sure Im missing it, can you just give me a pointer in the right direction?
Also, Im surprised, that this is not a quantized time, with respect to tempo... e.g. would it not be better to compress data at 1/32 1/64 1/128 of tempo,
if its not done to tempo time, then you are going to get some weird interaction
e.g. 120 BPM, 1/32 ~15ms, so decimating at 40, is going to be sending off beat much of the time
Again, Id be interested in your thinking behind this
Cheers
Mark