Hello,
i’m having a hardtime receiving miditimecode. The midi in dat’s get the data into touch designer.
I used a midi in DAT an with some expressions to reassemble the data nibbles that I receive from
the midi stream. but receiving each indexed nibble individually leads to glitches when assembling the total timecode string. Using the buffer function of the midievents dat leads to skipped frames.
Hi Shiner.
What’s your ultimate goal?
Can you use the MIDI In CHOP to receive bars, which are ultimately composed of MIDI ticks?
Why does reassembling the nibbles lead to glitches btw?
Im trying to sync with sony soundforge that gives mtc and I have some other devices that also generate mtc not midi time. The midi in chop does not support the mtc quaterframe format as far as I know.
The problem that I have is that in mtc each frame is send in 8 seperate messages. The index filter can be used to filter each “nibble” of data. So I end up with 8 dat’s that have a part of the frame data. When adding them together it sometimes happens that a lsb and msb nibble is added from the wrong frame, so there is a big jump when the msb nibble is added just befor it changes.
So the is a problem with synchronisation.
I somewhat solved the issue now by using the buffering of the midi event dat. I use the history and at every cook I have a script that searches for the index 0. I know than that the consecutive messages is a complete frame.
But I do believe that there must be a better solution for this.
Looking through the code, looks like the MIDI CHOP doesn’t process the quarter frame messages, but looks like the MIDI DATs do, as you’re using.
However, instead of using 8 DATs, I would use a single one.
Put all your re-assembly code in a single function callback script.
Store partial results in another DAT.
That way you don’t run into issues depending on which of your 8 DATs cook first.
For some reason touch designer crashes every time I try to import the mtc.tox file that shiner posted so I ended up rewriting it. MTC_Quarterframes.tox (3.09 KB)