Vector Sound Wave Morphing

May 20th, 2009  |  Published in Uncategorized  |  3 Comments

This my my final project for the course “Interactivity I”. For this final project, my aim is to explore the vector nature of sound wave while making a tool to let people create their own waveform which can then be saved for other use.

The waveform in the program consists of 10 control points. The first point and the last point are fixed at zero so that the wave can be looped smoothly to form a sound wave. The controls points can be adjusted by dragging or by using keyboard. The points are assigned with keys labeled near them, which are number keys (+shift to move points up instead of down). I recommend using the keyboard as you may adjust multiple points at the same time (which feels like using multitouch surface 8-) ).

Degrafa is used to construct the wave form. I choose to use cubic bezier curve as it is easier for me to implement the algorithm (with the still-in-beta AdvancedCubicBezier which available via SVN).

The 3D cylinder is made by Flash Player 10′s 3D API. It looks quite nice as similar to landscapes.

Sound is synthesized dynamically in real-time (with some delay… okay? ;-) ). If you hear some “clicks” or “pops”, try to export the sound first by clicking on the export button at the bottom-right corner (it will be in wav format, encoded by the WavEncoder from popforge) .

If you hear nothing, you may try to increase the buffer size or use the export function.


Tags: , , , ,
  • Wouter

    Wow, this is an intriguing app. Nice interface. I like the clear way the rotating cylinder visualizes the morphing sound. Never seen anything like it.
    But I still had to save the file and open it in an audio editor to see what exactly was going on. And the editor (Wave Editor on Mac) had some difficulty opening the wav. Did you experience that as well? I intend to use WavEncoder myself for my next project so I was interested in that aspect of the app as well.

    So cheers for the cool app,

  • Andy

    Glad that you like it :)
    The app is changing the wave form according to the curve you design. That means the sound playing at a moment is having a wave form of the exactly same look as the curve.
    I haven’t try Mac’s WaveEditor but Audacity on Windows works… And Audacity has Mac version too.

  • bd

    very cool!!!