NoiseGen

Created 2012-05-22 / Edited 2014-10-01

NoiseGen

20-Minute Software Synth

YouTube:pMZ4ilLzKW8

Digital sound isn't really much more than a stream of floating point numbers from -1..1 sent to the sound card at a constant rate. So... let's use that concept to generate some noise using simple programming. Here I'm using 'unit generators', built in high-level dynamic programming languages, to make my speakers jump around a bit.

Perl: github | local browse | local git
Python: github | local browse | local git
Ruby: github | local browse | local git

  # Alien Death Ray Sound?
  
  my $lfo = sine( freq => 5 );
  
  my $vfreq = sub {
    $lfo->() * 100 + 440
  }
  
  play( gen =>
    sine( freq => $vfreq )
  )

News

  • 2012.06.23 - Presented at YAPC::NA 2012. Video is up on YouTube!
  • 2012.05.31 - Presented NoiseGen at Arlington Ruby