Minim
core
ugens
analysis
 
Name getLineIn
Examples
/**
  * This sketch demonstrates how to monitor the currently active audio input 
  * of the computer using an AudioInput. What you will actually 
  * be monitoring depends on the current settings of the machine the sketch is running on. 
  * Typically, you will be monitoring the built-in microphone, but if running on a desktop
  * it's feasible that the user may have the actual audio output of the computer 
  * as the active audio input, or something else entirely.
  * <p>
  * Press 'm' to toggle monitoring on and off.
  * <p>
  * When you run your sketch as an applet you will need to sign it in order to get an input.
  * <p>
  * For more information about Minim and additional features, 
  * visit http://code.compartmental.net/minim/ 
  */

import ddf.minim.*;

Minim minim;
AudioInput in;

void setup()
{
  size(512, 200, P3D);

  minim = new Minim(this);
  
  // use the getLineIn method of the Minim object to get an AudioInput
  in = minim.getLineIn();
}

void draw()
{
  background(0);
  stroke(255);
  
  // draw the waveforms so we can see what we are monitoring
  for(int i = 0; i < in.bufferSize() - 1; i++)
  {
    line( i, 50 + in.left.get(i)*50, i+1, 50 + in.left.get(i+1)*50 );
    line( i, 150 + in.right.get(i)*50, i+1, 150 + in.right.get(i+1)*50 );
  }
  
  String monitoringState = in.isMonitoring() ? "enabled" : "disabled";
  text( "Input monitoring is currently " + monitoringState + ".", 5, 15 );
}

void keyPressed()
{
  if ( key == 'm' || key == 'M' )
  {
    if ( in.isMonitoring() )
    {
      in.disableMonitoring();
    }
    else
    {
      in.enableMonitoring();
    }
  }
}
Description An AudioInput is used when you want to monitor the active audio input of the computer. On a laptop, for instance, this will typically be the built-in microphone. On a desktop it might be the line-in port on the soundcard. The default values are for a stereo input with a 1024 sample buffer (ie the size of left, right, and mix buffers), sample rate of 44100 and bit depth of 16. Generally speaking, you will not want to specify these things, but it's there if you need it.
Syntax
getLineIn();
getLineIn(type);
getLineIn(type, bufferSize);
getLineIn(type, bufferSize, sampleRate);
getLineIn(type, bufferSize, sampleRate, bitDepth);
Parameters
type   Minim.MONO or Minim.STEREO
bufferSize   int: how long you want the AudioInput's sample buffer to be (ie the size of left, right, and mix buffers)
sampleRate   float: the desired sample rate in Hertz (typically 44100)
bitDepth   int: the desired bit depth (typically 16)
Returns an AudioInput that reads from the active audio input of the soundcard
Usage Web & Application
Related AudioInput