The ‘Mugoscope’ was a project I worked on to produce sinusoidal based waveforms with noise additives. It’s written in PHP – probably the slowest language in the world for creating wav files but, hey, now I know it’s possible.
The basic idea is to create map files, or more specifically, arrays of arrays, with which to create a wave file where the current point in time frequency information is known. This makes it easier to display run time information such as frequency and attenuation, rather than having to perform a reverse analysis of the wave – what’s shown on the video is the control data, not the after results of scanning the waveform.
It’s all built at one time. But… it’s slow. A ten minute wave and video takes about an hour using an average I7 laptop running Linux. But… who cares since it’s rendering in the background, or overnight, right?…
I did begin translating the code to C to see what kind of speed I can get… more on this as I get around to it.
Here’s one of the test videos: