Testing audio output

From CCRMA Wiki
Revision as of 15:06, 22 September 2010 by Njb (Talk | contribs)

Jump to: navigation, search

== Recording/Analyzing Signals

  • Easiest: just write a binary output file. The Audacity audio editor can "Import Raw" audio. Select the correct format and import. Audacity is installed on all CCRMA machines or can be downloaded for free here. You will automatically view the time domain signal. To see the frequency response, you can select a portion of audio and click Analyze->Plot Spectrum.

Reference Signals

When creating signal generators yourself, you will want to compare your audio output to reference signals. Here are a few audio programing languages/environments that might be useful.

  • Chuck-audio programming language (suggested for ease-of-use)
  • Pure Data- a graphical audio programming language
  • Bit Harder: write a wave file. You can use libsndfile -C library for reading and writing files containing sampled sound

SAMPLE CHUCK CODE

   // Comment/uncomment the different oscillators to hear each 
   SinOsc s => dac;
   //TriOsc s => dac;
   //SqrOsc s => dac;
   //PulseOsc s => dac;
  .2 => s.gain;
   while( true )
   {
       440.0 => s.freq;
       100::ms => now;
   }
   // Use this for impulse
   //Impulse i => dac;
   //while( true ) {
   //    1.0 => i.next;
   //    100::ms => now;
   //}
   // Use this for noise 
   //Noise n => dac;
   //.2 => n.gain;
   //while( true )
   //{
   //    100::ms => now;
   //}


Download and install. From there you'll need to create a small bit of code to make the same output signals.