swissdoc
back on duty
dass der MWII/XT die Wavetable als Ratio darstellt und dadurch den fliessenden Übergang erlangt.
Wie das mit den Tables und den Waves funktioniert ist im SysEx Manual zum Microwave V2.0 im Detail beschrieben. Es ist eine banale lineare Interpolation zwischen den Waves, wenn eben der Pointer in der Table auf -1 gesetzt ist. Wenn man alle 61 Slots mit Waves bestückt, so wird nicht interpoliert. Der MWII/XT kann halt auch unsymmetrische Waves handhaben, was aber WIMRE nicht dokumentiert ist und nur von der TruePWM Table genutzt wird.Das mit dem Interpolieren zwischen den einzelnen Waves einer Wavetable habe ich auch nie so richtig verstanden.
Wie schon geschrieben, so wird beim Laden interpoliert (wie auch schon im PPG) oder eben bei Algorithmischen, UPAW oder Speech Tables beim Laden gerechnet. Dann liegt es in einem RAM, das der ASIC auslesen kann und das Platz für 8x die vollen Daten hat -> 8-facher Multimode. Das Laden ist dann auch noch optimiert, also wenn ein Wellensatz schon in diesem Speicher steht, dann wird eben nicht mehr geladen oder gerechnet. Das merkt man beim Prog-Change, machmal gibt es eine kleine Kunstpause (bei Algorithmischen, UPAW oder Speech Tables) und manchmal eben nicht, da ist dieser Wellensatz schon im RAM.
Beim Abspielen wird einzig aus einer Halbwelle eine Vollwelle erzeugt, das bekommt der ASIC in Echtzeit hin. Sonst werden da nur die Daten aus dem RAM ausgelesen, skaliert und addiert und auf den DAC geschmisen. Ein Phase Akkumulator sorgt für die passende Tonhöhe (und die Artfakte bei hohen Tönen, da werden dann einfach einzelne Samples weggelassen). Schön zu hören, wenn man einen hohen Ton spielt und dann Pitch-Bend nutzt.