net.beadsproject.beads.analysis.segmenters
Class SimplePowerOnsetDetector

java.lang.Object
  extended by net.beadsproject.beads.core.Bead
      extended by net.beadsproject.beads.core.UGen
          extended by net.beadsproject.beads.analysis.Segmenter
              extended by net.beadsproject.beads.analysis.segmenters.SimplePowerOnsetDetector

public class SimplePowerOnsetDetector
extends Segmenter

SimplePowerOnsetDetector runs a very simple onset detection algorithm and segments audio accordingly.


Field Summary
 
Fields inherited from class net.beadsproject.beads.analysis.Segmenter
currentTime, previousEndTime
 
Fields inherited from class net.beadsproject.beads.core.UGen
bufferSize, bufIn, bufOut, context, ins, outs
 
Constructor Summary
SimplePowerOnsetDetector(AudioContext context)
          Instantiates a new SimplePowerOnsetDetector.
SimplePowerOnsetDetector(AudioContext context, Bead listener)
          Instantiates a new SimplePowerOnsetDetector with one listener.
 
Method Summary
 void calculateBuffer()
          Called by the signal chain to update this UGen's ouput data.
 int getBeatStrength()
          Gets the current beat strength, determined by the set of thresholds specified in setThresholds(float[]).
 double getCutout()
          Gets the cutout time.
 double getHop()
          Gets the hop size.
 float[] getThresholds()
          Gets the array of thresholds used to determine the onset layer.
 boolean isClicking()
          Checks if audible click is activated.
 void setClick(boolean click)
          Sets/unsets the audible click.
 void setCutout(float cutout)
          Sets the cutout time.
 void setHop(float msHop)
          Sets the hop size.
 void setThresholds(float[] thresholds)
          Sets the array of thresholds used to determine the onset layer.
 
Methods inherited from class net.beadsproject.beads.analysis.Segmenter
addListener, addListener, segment, startTime, toString
 
Methods inherited from class net.beadsproject.beads.core.UGen
addDependent, addInput, addInput, clearInputConnections, getContext, getIns, getNumberOfConnectedUGens, getOuts, getValue, getValue, noInputs, pause, printInputList, printOutBuffers, removeAllConnections, removeDependent, setValue, update, zeroIns, zeroOuts
 
Methods inherited from class net.beadsproject.beads.core.Bead
getKillListener, getName, isDeleted, isPaused, kill, message, messageReceived, setKillListener, setName, start
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SimplePowerOnsetDetector

public SimplePowerOnsetDetector(AudioContext context,
                                Bead listener)
Instantiates a new SimplePowerOnsetDetector with one listener.

Parameters:
context - the AudioContext.
listener - the listener.

SimplePowerOnsetDetector

public SimplePowerOnsetDetector(AudioContext context)
Instantiates a new SimplePowerOnsetDetector.

Parameters:
context - the context
Method Detail

getCutout

public double getCutout()
Gets the cutout time.

Returns:
the cutout time in milliseconds.

setCutout

public void setCutout(float cutout)
Sets the cutout time.

Parameters:
cutout - the new cutout time in milliseconds.

isClicking

public boolean isClicking()
Checks if audible click is activated.

Returns:
true if clicking.

setClick

public void setClick(boolean click)
Sets/unsets the audible click.

Parameters:
click - true to hear click.

getHop

public double getHop()
Gets the hop size.

Returns:
the hop size in milliseconds.

setHop

public void setHop(float msHop)
Sets the hop size.

Parameters:
msHop - the new hop size in milliseconds.

getThresholds

public float[] getThresholds()
Gets the array of thresholds used to determine the onset layer.

Returns:
the threshold array.

setThresholds

public void setThresholds(float[] thresholds)
Sets the array of thresholds used to determine the onset layer.

Parameters:
thresholds - the new threshold array.

calculateBuffer

public void calculateBuffer()
Description copied from class: UGen
Called by the signal chain to update this UGen's ouput data. Subclassses of UGen should implement the UGen's DSP perform routine here. In general this involves grabbing data from UGen.bufIn and putting data into UGen.bufOut in some way. UGen.bufIn and UGen.bufOut are 2D arrays of floats of the form float[numChannels][bufferSize]. The length of the buffers is given by UGen.bufferSize, and the number of channels of the input and output buffers are given by UGen.ins and UGen.outs respectively.

Specified by:
calculateBuffer in class UGen

getBeatStrength

public int getBeatStrength()
Gets the current beat strength, determined by the set of thresholds specified in setThresholds(float[]).

Returns:
the beat strength.