net.beadsproject.beads.analysis.featureextractors
Class PeakDetector
java.lang.Object
net.beadsproject.beads.core.Bead
net.beadsproject.beads.analysis.FeatureExtractor<java.lang.Float,java.lang.Float>
net.beadsproject.beads.analysis.featureextractors.PeakDetector
- All Implemented Interfaces:
- SegmentMaker
public class PeakDetector
- extends FeatureExtractor<java.lang.Float,java.lang.Float>
- implements SegmentMaker
Detects peaks in a continuous stream of one element inputs. Attach to an
OnsetDetectionFunction (like SpectralDifference) to get Onsets. Use
addMessageListener to receive a message when an onset is detected.
The algorithm follows the one described in: Dixon, S (2006)
"Onset Detection Revisited" Proc. of the 9th Int. Conference on Digital Audio
Effects (DAFx-06), Montreal, Canada, September 18-20, 2006
- Author:
- ben
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
PeakDetector
public PeakDetector()
setThreshold
public void setThreshold(float thresh)
setAlpha
public void setAlpha(float alpha)
getLastOnsetValue
public float getLastOnsetValue()
- Returns:
- the value at the last onset
getLagInFrames
public int getLagInFrames()
- Returns:
- The lag in frames between onsets occurring and actually being
detected
getBufferSize
public int getBufferSize()
- Get the correct BufferSize for the OnsetDetector
setFilter
public void setFilter(Buffer b)
- Sets the window for the local averaging.
- Parameters:
b
- Buffer must be of size == getBufferSize(), and integrates to
1.
process
public void process(TimeStamp startTime,
TimeStamp endTime,
java.lang.Float input)
- process: assumes input is a 1 element array
- Specified by:
process
in class FeatureExtractor<java.lang.Float,java.lang.Float>
input
- the data.
addMessageListener
public void addMessageListener(Bead b)
removeMessageListener
public void removeMessageListener(Bead b)
addSegmentListener
public void addSegmentListener(SegmentListener sl)
- Specified by:
addSegmentListener
in interface SegmentMaker
removeSegmentListener
public void removeSegmentListener(SegmentListener sl)
- Specified by:
removeSegmentListener
in interface SegmentMaker