Skip to content

A command line application for creative conversions between audio and image files.

License

Notifications You must be signed in to change notification settings

Leon-Focker/WaveFiddler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WaveFiddler

WaveFiddler is a command line application for creative conversions between audio and image files.

Precompiled binaries can be found in the Releases tab

Since this software is not signed for MacOS, you might have to do something like this:
sudo chmod a+x ./wavefiddler
MacOS < 15.0: --add ./wavefiddler
MacOS >= 15.0 -d com.apple.quarantine ./wavefiddler

Currently supported conversions:

  • From .wav to one image (.jpg or .png) with variable FFT size.
  • From .wav to an image sequence, which will be in sync with the audio file when played at the given frame rate (can be set).
  • From an image (.jpg or .png) to a wavetable (.wav) with one frame.
  • From an image (.jpg or .png) to a wavetable (.wav) with multiple frames.

Examples

To run these examples, make sure to adjust the paths to the WaveFiddler binary and this examples folder based on their locations on your system. When you don't specify an output directory, the results are put into ./wavefiddler_outputs/ (which will be created if it does not exist). Run ./wavefiddler --help for detailed documentation on usage and available options.

Sound to Image

Generating a black and white image sequence from a mono file.
.\wavefiddler.exe .\examples\kick.wav -a 1

kick.mp4

Changing the color map to get a different hue, only generate the first frame
.\wavefiddler.exe .\examples\kick.wav -a 1 -s 0 -c 0.2,0,1,0,0.5,0

kick

Specifying image dimensions and using a different method
.\wavefiddler.exe .\examples\kick.wav -a 3 -s 0 -c 0.2,0,1,0,0.5,0 -d 400,200

kicktt

Use a different method to generate a single image. A stereo soundfile produces more interesting colours
.\wavefiddler.exe .\examples\bells.wav -s 0

bells1

Use yet another method, start at the 24000s sample of the soundfile, use 40000 samples and make it vibrant
.\wavefiddler.exe .\examples\bells.wav -s 24000 -a 4 -f 40000 -v 5 -c 0.5,0,0,1,0,0.2

bells

Image to sound

Get a wavetable of length 512 from an image, plot the generated waveform and spectrum
.\wavefiddler.exe .\examples\cat.jpg --plot-waveforms --plot-spectra

example_12 example_11

Get a wavetable of length 512 from an image, plot the generated waveform and spectrum but fit the original spectrum into the length of the wavetable
.\wavefiddler.exe .\examples\cat.jpg -S --plot-waveforms --plot-spectra

waveform spectrum_grey

Get a wavetable with 100 frames and automatic fft-size, name the output file
.\wavefiddler.exe .\examples\cat.jpg -f 0 -i 100 -n "cat.wav"

cat.mp4

.\wavefiddler.exe .\examples\phillippa.png -f 0 -i 100 -n "phillippa"

phillippa.mp4

About

A command line application for creative conversions between audio and image files.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages