Marsyas  0.2
Data Structures
Processing

These MarSystems process realvecs. There is a separate list of simple processing blocks; this list includes both simple and advanced processing blocks. More...

Data Structures

class  ADSRenvelope
 Multiply input realvec by Value of Envelope. More...
class  BeatAgent
 Entity representing a given {period, phase} hypothesis regarding a train of beat positions paced by the following tempo. A set of initial agents are feeded by the initial hypothesis given by an initial tempo induction stage. Each BeatAgent is recursively evaluated in real-time, by a given score function (heuristics), around each predicted beat. According to the goodness-of-fit between each agent's prediction and the correspondent local maxima in the observed data (given by the onset detection function calculated by the Spectral Flux) the agent's current score is incremented or decremented, calling for the creation of new agents (children) when large discrepancies are observed. More...
class  BeatPhase
 Given a periodicity calculate best matching phase. More...
class  BeatReferee
 Central agency responsible for causally evaluating a pool of active BeatAgents around each beat prediction, and selecting the best one at each time ("frame" - tick), based on a given heuristics (score function) which affers the goodness-of-fit between each agent prediction and local maxima in the observed data (given by the onset detection function calculated by the Spectral Flux). More...
class  BeatTimesSink
 Outputs predicted beat times (in seconds or "frames"-ticks) and/or the median IBI (in BPMs). More...
class  Biquad
 Filter a Signal. More...
class  CARFAC
 Multiply input realvec with a fixed value. More...
class  Clip
 Clip. More...
class  Combinator
 Basic example on how to use controls efficiently in MarSystems. More...
class  CompExp
 Multiply input realvec with CompExp. More...
class  Deinterleave
 Deinterleave i.e. Reorder input realvec along observations. More...
class  DeInterleaveSizecontrol
 Deinterleave i.e. Reorder input realvec. More...
class  Delay
 Delay. More...
class  DelaySamples
 Simple MarSystem that shifts samples back in time. More...
class  DeltaFirstOrderRegression
 Calculate simple time domain delta in first order regression fashion. More...
class  Differentiator
 Calculate the difference of successive input samples. More...
class  DownSampler
 Downsample the input signal by dropping samples. More...
class  Envelope
 Multiply input realvec by Value of Envelope. More...
class  ERB
 ERB Filterbank. More...
class  Filter
 Filter a Signal. More...
class  FullWaveRectifier
 Full wave rectification: take the absolute value of all samples. More...
class  Gain
 Multiply input realvec with a fixed value. More...
class  HalfWaveRectifier
 Negative values are trimmed to zero, positive values are kept. More...
class  HarmonicStrength
 Calculates the relative strength of harmonics. More...
class  Inject
 Inject a vector specified by the mrs_realvec/inject control into the datastream. More...
class  Limiter
 Multiply input realvec with Limiter. More...
class  LyonAgc
 Automatic Gain control specific for Lyon's Passive Ear. More...
class  LyonChannelDiff
 Channel Difference specific for Lyon's Passive Ear. More...
class  LyonPassiveEar
 Lyon filterbank. More...
class  LyonZeroOutPreEmph
 set the first two filter channels (preemphasis) to zero More...
class  MarSystemTemplateBasic
 Basic example on how to use controls efficiently in MarSystems. More...
class  MathPower
 each output = pow(input, x). Supports decimal exponents (i.e. taking the nth root). More...
class  MedianFilter
 Apply median filter on input vector. More...
class  Memory
 Memory output the past memSize input observations. More...
class  MixToMono
 Mix the input channels (observations rows) into one output observation channel. More...
class  Mono2Stereo
 Convert mono to stereo by copying. More...
class  Negative
 Toggle the sign of the input samples. More...
class  NoiseGate
 Multiply input realvec with NoiseGate. More...
class  Norm
 Normalize each observation channel separately per slice. More...
class  Normalize
 Normalize my mapping min/max range to user specified range. More...
class  NormalizeAbs
 Normalize each observation channel by absolute value. More...
class  NormMatrix
 Normalize the input data slice as a whole. More...
class  NormMaxMin
 Normalize by mapping min/max range to user specified range. More...
class  OnePole
 Simple one-pole digital filter. More...
class  OnsetTimes
 Retrieves M first beat times (phases, in "frames"-ticks), retrieved from peaks from an onset function. More...
class  OrcaSnip
 Multiply input realvec with OrcaSnip. More...
class  OverlapAdd
 OverlapAdd. More...
class  Panorama
 Amplitude Panning to move single broadband source to an azimuth angle. More...
class  ParallelMatrixWeight
 Basic example on how to use controls efficiently in MarSystems. More...
class  PatchMatrix
 Linear Combine Each input channel (i.e. observation) with each other channel the weights for the combinations can be provided through the weights control: each column of the weights control contains the weight for the input channel (i.e. row) with the same number indexwise. Sets of weight for each channel are expected to be found within same channel of the weights control. A constant vector can also be provided in the consts control to set the offset for each channel respectively. More...
class  PeakDistanceHorizontality
 compute a weight depending on how "horizontal" the distance between two peak entries is More...
class  PeakRatio
 Incorporates the ratio of the higest peak to minimal/average peak of each observation samplewise to the output vector. More...
class  PhaseLock
 Retrieves the N best {period, phase} hypotheses by affering the phase more suited to each period (by correlating each of the N*M hypotheses with the onset detection function within the initial induction window). Besides, it tries to infer the correct metre (duple or triple) by atributing the correspondent hierarchical set of initial scores, normalized in accordance to the weigth imposed by the time of the initial induction window. It supports ground-truth mode which inputs the first two beats retrieved from a ground-truth beat times annotation file, for initially assigning (only) one agent with the ground-truth period and phase. More...
class  RemoveObservations
 Removes observations outside a given range. More...
class  Resample
 resamples all observations using a piecewise cubic bezier polynomial for interpolation between samples More...
class  ResampleBezier
 resamples all observations using a piecewise cubic bezier polynomial for interpolation between samples More...
class  ResampleLinear
 Stretch samples using linear interpolation. More...
class  ResampleNearestNeighbour
 Stretch samples using the samples' nearest neighbours. More...
class  ResampleSinc
 resamples all observations using a sum of sinc functions wheareas each point is modeled by a sinc function with the given points amplitude, that is set to zero after the 5th zero crossing More...
class  Reverse
 Reverse the input samples (i.e. first samples become last and vice-versa) More...
class  Shifter
 Shifts the input and outputs the original and shifted version. More...
class  ShiftInput
 Apply sliding window with certain hop size and window size. More...
class  ShiftOuput
 Shift next D samples. More...
class  Signum
 Compute sign of input vector: output vector is 1 for strictly positive observations, 0 for the rest. More...
class  SimulMaskingFft
 Return only the power spectrum components above the masking threshold. More...
class  SliceDelta
 Takes the difference (delta) between successive input slices. More...
class  SliceShuffle
 Shuffle the incoming slices randomly. More...
class  SpectralCentroidBandNorm
 Basic example on how to use controls efficiently in MarSystems. More...
class  SpectralTransformation
 Contains various spectral transformation. Input and output is a complex spectrum. Mostly used to demonstrate how spectral analyis works. More...
class  Spectrum2ACMChroma
 Transform an (amplitude) spectrum to a chroma profile. More...
class  Square
 Square the input samples. More...
class  StretchLinear
 Stretch samples using linear interpolation. More...
class  SubtractMean
 Subtract the mean of each observation channel. More...
class  Sum
 Sum the input rows of observations into one row. More...
class  TempoHypotheses
 Organizes a NN x 3 matrix given NN = N x M raw {period, phase, periodSalience} hypotheses. (if no periods were retrieved some manually defined periods will be assumed) More...
class  TimeFreqPeakConnectivity
 uses dynamic programming to create a (symmetric) distance matrix between the series of peaks at the inputs More...
class  Transposer
 switches samples and observations, i.e. transposes the output realvec (inSamples -> onObservations, onSamples -> inObservations) More...
class  Unfold
 Take a two-dimesional realvec and unfold it to make a one-dimensional realvec. More...
class  Vibrato
 Apply vibrato using time-varying delay. More...
class  Windowing
 Apply a windowing function (envelope) to the input signal. More...

Detailed Description

These MarSystems process realvecs. There is a separate list of simple processing blocks; this list includes both simple and advanced processing blocks.