| Package | org.si.sion.utils | 
| Class | public class PeakDetector | 
| Inheritance | PeakDetector    Object | 
| Property | Defined By | ||
|---|---|---|---|
| average : Number [read-only]  avarage wave energy   | PeakDetector | ||
| bandWidth : Number  half band width of band pass filter [oct.]   | PeakDetector | ||
| differencialOfLogPowerProfile : Vector.<Number> [read-only]  exponential of differencial of log scaled powerProfile, same length with powerProfile   | PeakDetector | ||
| frequency : Number  frequency of band pass filter [Hz], set 0 to skip filtering   | PeakDetector | ||
| maximum : Number [read-only]  maximum wave energy   | PeakDetector | ||
| maxPeaksPerMinute : Number = 192 [static]  maximum value of peaksPerMinute, the minimum value is a half of maximum value.  | PeakDetector | ||
| peakList : Vector.<Number> [read-only]  analyzed peak list in [ms].  | PeakDetector | ||
| peaksPerMinute : Number [read-only]  estimated peak per minutes.  | PeakDetector | ||
| peaksPerMinuteEstimationScoreTable : Vector.<Number> [read-only]    | PeakDetector | ||
| peaksPerMinuteProbability : Number [read-only]  probability of estimated peaksPerMinute value.  | PeakDetector | ||
| powerProfile : Vector.<Number> [read-only]  analyzed wave energy profile 2100[fps] (the length is 1/21(2100/44100) of analyzing samples).  | PeakDetector | ||
| samples : Vector.<Number> [read-only]  samples to analyze, 44.1kHz only   | PeakDetector | ||
| samplesChannelCount : int [read-only]  channel count of analyzing samples (1 or 2)   | PeakDetector | ||
| signalToNoiseRatio : Number  S/N ratio for peak detection [dB]   | PeakDetector | ||
| windowLength : int  window length of simple moving avarage [ms]   | PeakDetector | ||
| Method | Defined By | ||
|---|---|---|---|
PeakDetector(frequency:Number = 0, bandWidth:Number = 0.5, windowLength:Number = 20, signalToNoiseRatio:Number = 20)  constructor 
            | PeakDetector | ||
calcPeakIntencity(peakPosition:Number, integrateLength:Number = 10):Number  calcuate peak inetncity 
            | PeakDetector | ||
calcPeaksPerMinuteEstimationScoreTable(peakList:Vector.<Number>, scoreTable:Vector.<Number> = null):Vector.<Number> [static]    | PeakDetector | ||
mergePeakList(arrayOfPeakList:Array, singlePeakLength:Number = 40):Vector.<Number> [static]  merage peak list
            | PeakDetector | ||
setSamples(samples:Vector.<Number>, channelCount:int = 2, isStreaming:Boolean = false):PeakDetector  set analyzing source samples
            | PeakDetector | ||
| average | property | 
average:Number  [read-only] avarage wave energy
    public function get average():Number| bandWidth | property | 
bandWidth:Numberhalf band width of band pass filter [oct.]
 The default value is 0.5.
    public function get bandWidth():Number    public function set bandWidth(value:Number):void| differencialOfLogPowerProfile | property | 
differencialOfLogPowerProfile:Vector.<Number>  [read-only] exponential of differencial of log scaled powerProfile, same length with powerProfile
    public function get differencialOfLogPowerProfile():Vector.<Number>| frequency | property | 
frequency:Numberfrequency of band pass filter [Hz], set 0 to skip filtering
 The default value is 0.
    public function get frequency():Number    public function set frequency(value:Number):void| maximum | property | 
maximum:Number  [read-only] maximum wave energy
    public function get maximum():Number| maxPeaksPerMinute | property | 
public static var maxPeaksPerMinute:Number = 192maximum value of peaksPerMinute, the minimum value is a half of maximum value.
 The default value is 192.
| peakList | property | 
peakList:Vector.<Number>  [read-only] analyzed peak list in [ms].
    public function get peakList():Vector.<Number>| peaksPerMinute | property | 
peaksPerMinute:Number  [read-only] estimated peak per minutes. this value is similar but different form bpm(tempo), because the peaks are not only on 4th beats, but also 8th or 16th beats.
    public function get peaksPerMinute():Number| peaksPerMinuteEstimationScoreTable | property | 
peaksPerMinuteEstimationScoreTable:Vector.<Number>  [read-only] 
    public function get peaksPerMinuteEstimationScoreTable():Vector.<Number>| peaksPerMinuteProbability | property | 
peaksPerMinuteProbability:Number  [read-only] probability of estimated peaksPerMinute value. 1 means estimated perfectly and 0 means not good estimation.
    public function get peaksPerMinuteProbability():Number| powerProfile | property | 
powerProfile:Vector.<Number>  [read-only] analyzed wave energy profile 2100[fps] (the length is 1/21(2100/44100) of analyzing samples).
    public function get powerProfile():Vector.<Number>| samples | property | 
samples:Vector.<Number>  [read-only] samples to analyze, 44.1kHz only
    public function get samples():Vector.<Number>| samplesChannelCount | property | 
samplesChannelCount:int  [read-only] channel count of analyzing samples (1 or 2)
    public function get samplesChannelCount():int| signalToNoiseRatio | property | 
signalToNoiseRatio:NumberS/N ratio for peak detection [dB]
 The default value is 20.
    public function get signalToNoiseRatio():Number    public function set signalToNoiseRatio(value:Number):void| windowLength | property | 
windowLength:intwindow length of simple moving avarage [ms]
 The default value is 20.
    public function get windowLength():int    public function set windowLength(value:int):void| PeakDetector | () | Constructor | 
public function PeakDetector(frequency:Number = 0, bandWidth:Number = 0.5, windowLength:Number = 20, signalToNoiseRatio:Number = 20)constructor
Parametersfrequency:Number (default = 0) — frequency of band pass filter [Hz], set 0 to skip filtering
           | |
bandWidth:Number (default = 0.5) — half band width of band pass filter [oct.]
           | |
windowLength:Number (default = 20) — window length of simple moving avarage [ms]
           | |
signalToNoiseRatio:Number (default = 20) — S/N ratio for peak detection [dB]
          | 
| calcPeakIntencity | () | method | 
 public function calcPeakIntencity(peakPosition:Number, integrateLength:Number = 10):Numbercalcuate peak inetncity
Parameters
peakPosition:Number — peak positoin [ms]
           | |
integrateLength:Number (default = 10) — integration length [ms]
          | 
Number | 
| calcPeaksPerMinuteEstimationScoreTable | () | method | 
 public static function calcPeaksPerMinuteEstimationScoreTable(peakList:Vector.<Number>, scoreTable:Vector.<Number> = null):Vector.<Number>
Parameters
peakList:Vector.<Number> — peal list [ms]
           | |
scoreTable:Vector.<Number> (default = null) — score table instance to set, null to create new table.
           | 
Vector.<Number> — score table
          | 
| mergePeakList | () | method | 
 public static function mergePeakList(arrayOfPeakList:Array, singlePeakLength:Number = 40):Vector.<Number>merage peak list
Parameters
arrayOfPeakList:Array — Array of peakList(Vector.<Number> type) to marge
           | |
singlePeakLength:Number (default = 40) — time distance to merge near peaks as 1 peak
           | 
Vector.<Number> — merged peak list
          | 
| setSamples | () | method | 
 public function setSamples(samples:Vector.<Number>, channelCount:int = 2, isStreaming:Boolean = false):PeakDetectorset analyzing source samples
Parameters
samples:Vector.<Number> — analyzing source 
           | |
channelCount:int (default = 2) — channel count of analyzing source
           | |
isStreaming:Boolean (default = false) — true to continuous data with previous analyze
           | 
PeakDetector — this instance
          |