Various scripts used to convert static visual media to signals. ๐จ โ ๐
- Clone the repository and move to its directory.
git clone https://github.com/kubinka0505/soniform cd soniform - Install required modules by inputting
pip install -r requirements.txt
Converts a vector shape into a Lissajous curve waveform, suitable for visualization on oscilloscopes.
Basic usage:
lissajous.py -i "shape.svg"Advanced usage:
lissajous.py -i "shape.svg" -a 0.5 -d 1 -r 2 -freq A4Basic arguments:
-i: Input SVG shape to convert.-a: Duration of the generated build-up animation (seconds).-d: Total waveform duration (seconds).-r: Fall-off duration after playback (seconds).-sr: Audio sample rate (Hz).-freq: Playback frequency (note or Hz).
Traces the outline of a shape and converts it into a waveform.
Generates both a visual trace animation and a corresponding audio cycle.
Basic usage:
wavegraph.py -i "shape.svg"Advanced usage:
wavegraph.py -i "shape.svg" -f 40 -fps 30 -c #FC0 -sr 96k -freq C3Basic arguments:
-i: Input SVG shape to trace.-f: Number of generated animation frames.-fps: Playback frame rate.-c: RGB color of the rendered waveform.-sr: Audio sample rate (Hz).-freq: Playback frequency (note or Hz).
Creates a spectrogram image from the input file and produces the stereo audio signal represented by that spectrogram.
Basic usage:
specimg.py -i "shape.svg"Advanced usage:
specimg.py -i "shape.svg" -d 2 -sr 88.2k -fmin 100 -fmax -1 -fm logBasic arguments:
-i: Input image to convert.-d: Duration of generated audio (seconds).-sr: Audio sample rate (Hz).-fmin: Lowest frequency included in the spectrogram (Hz).-fmax: Highest frequency included in the spectrogram (-1is equivalent to-sr).-fm: Frequency scaling mode (logfor logarithmic scaling).