I’m trying to studing how a thumbnail is drawn in tracktion.
My goal is drawing a thumbnail that fits on my timeline where I can zoom and change the playhead behaviour (it can be vissualized with variable playhead velocity and so all beats with the same distance like softwares as cubase and the or constant playhead velocity and so beats variable according bpm changes as tracktion).
After a bit of studing on recording example that uses SmartThumbnail and behaviour on tracktion, I understand that the path is calculated by “TracktionThumbnail::CachedWindow” but before coding I’d like figure out:
There’s some sort of zoom variable of Edit (that I’m not finding) that this class refers to in any way? so changing this zoom
CachedWindow::drawingChannelfunction is iterated by ±1 and it’s ok, but what’s the sample of the audio track founded? (this is related also to previous question by logic in my mind around this problem);
when I warp the wave (like adding warp marker on clip in waveform) I immagine that source audio file is not modified but a reference (right?) and that to the
TracktionThumbnailis not passed an audio file but an audio segment list, that right or I don’t understand the utility of AudioSegmentList? anyway how does TracktionThumbnail show waveform when it is warped internally with markers?
I’d like to understand how get the interested sample for my x, I have 2 funcs that up to now convert X->Time and Time->X taking into account about stuff I already told above and I know that finally I shold create my Own Thumbnail class, but
TracktionThumbnail looks very solid and well done and I’d like to understand what is already done by it and where a start point to understand wich sample of the audio waveform it founds at X.
Really thank you in advice!