Vital LFO File Format Hacking!

If you export an LFO to disk you can check out the content. It’s basically a text file. The Triangle example looks like:

{“name”:“Triangle”,“num_points”:5,“points”:[0.0,1.0,0.125,0.0,0.25,0.9905238151550293,0.5,0.4854034185409546,1.0,1.0],“powers”:[0.0,0.0,0.0,0.0,0.0],“smooth”:false}

Disecting it:
It consists of 5 points --> “num_points”
And the points go by the x,y coordinates --> “points”[0.0,1.0,0.125,0.0,0.25,0.9905238151550293,0.5,0.4854034185409546,1.0,1.0]

So the very first point on is on coordinate: 0.0 and 1.0, the last one is on 1.0 and 1.0

Both ranges for x and y coordinates go from 0.0 to 1.0

Just for the sake of an experiment:
I used a short basedrum sample. Exported the waveform to text using Waveosaur.
Then transformed the data a little using some computer magic skills and injected the first 64 samples of the result into an LFO … Check the Picture… sure it is not spectacular, but the original basedrum simply starts with a transient and kind of a sine…

4 Likes

hello,
week ago i write simple script to create random LFOs.
rename RandomLFO.zip to RandomLFO.py
Maybe usefull.
RandomLFO.zip (1.5 KB)

2 Likes

Sorry, it does not open with 7-Zip

just rename extension .zip to .py
It’s python script no zipfile.
But i cannot upload python file thus i changed extension

Sigh I should learn to read :wink:
Looks promising, will take a look.
Why is the range while loop running with start < 1.0 and not <= 1.0?
If you only use 4 points then the last is on x-coordinate 0.75, right?
Just asking because I’m a python beginner and that was the first thing my eye spotted …

Cheers & Thanks for the Script!
] Peter:H [

This was just a quick attempt that didn’t lead to anything. I don’t have time for reverse engineering. Maybe Matt will publish some information in time. The only thing I know for sure is that the maximum number of points is 99 :slight_smile:

:+1: Thats’s why my attempts with 256 points crashed Vital :slight_smile: