Marsyas  0.5.0-beta1
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  ADSR
 Attack-Decay-Sustain-Release 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
 CAR-FAC model of auditory processing in the cochlea. More...
class  Cartesian2Polar
 Conversion of complex values from cartesian to polar form. More...
class  ChromaFilter
 Tuning Estimation Filterbank. More...
class  Clip
 Clip. More...
class  Combinator
 Combine observations by summing, multiplying, or picking largest or smallest of their respective sample values. More...
class  CompExp
 Compressor/Expander. More...
class  Compressor
class  Deinterleave
 Reorder input along observations. More...
class  DeInterleaveSizecontrol
 Reorder input observations. More...
class  Delay
 Delay. More...
class  DelaySamples
 Simple MarSystem that shifts samples back in time. More...
class  Delta
 Delta of input sequence. 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
 Linear attack-release 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
class  LyonPassiveEar
 Lyon filterbank. 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
 Collects and outputs N past input samples. 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
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
class  OverlapAdd
 OverlapAdd. More...
class  Panorama
 Amplitude Panning to move single broadband source to an azimuth angle. More...
class  ParallelMatrixWeight
 Multiply each observation with a different factor. 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  PeakEnhancer
 Enhance peaks that are harmonic. More...
class  PeakFeatureSelect
 This MarSystem takes a realvec with peak information (using peakView) and allows to select which peak features should be sent to the output. Used for similarity computations on peaks. More...
class  PeakPeriods2BPM
 PeakPeriods2BPM: convert peaks to beats per minute. More...
class  PeakRatio
 Incorporates the ratio of the higest peak to minimal/average peak of each observation samplewise to the output vector. More...
class  PeakSynthFFT
 perform amplitude modification of Power Spectrum using Peaks Info More...
class  PeakSynthOsc
 Multiply with window (both length Nw) using modulus arithmetic; fold and rotate windowed input into output array (FFT) (length N) according to current input time (t). 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  Polar2Cartesian
 Conversion of complex values from polar to cartesian form. More...
class  Product
 Multiplies observations together. Used for ring modulation. More...
class  PvConvert
class  PvConvolve
class  PvFold
class  PvOverlapadd
class  PvUnconvert
class  Ratio
 Ratio of observations to first observation. More...
class  RemoveObservations
 Removes observations outside a given range. More...
class  Resample
 Resampling in linear, bezier, nearest-neighbour, or sinc mode. More...
class  ResampleBezier
 Resamples each observation using a piecewise cubic bezier polynomial for interpolation. More...
class  ResampleLinear
 Stretch samples using linear interpolation. More...
class  ResampleNearestNeighbour
 Stretch samples using the samples' nearest neighbours. More...
class  ResampleSinc
 Resamples each observation using a sum of sinc functions. 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  ShiftOutput
 Pass on N amount of samples from the input vector. 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  SpectralTransformations
 Various spectral transformations. Input and output are complex spectrums. Mainly used to demonstrate how spectral analyis works. More...
class  Spectrum2ACMChroma
 Transform an (amplitude) spectrum to a chroma profile. More...
class  Square
 Squares input samples. More...
class  StretchLinear
 Stretches samples using linear interpolation. More...
class  Subtract
 Subtracts one observation from another. More...
class  SubtractMean
 Subtract the mean of each observation channel. More...
class  Sum
 Sum the input rows of observations into one row. More...
class  SVFilter
 State Variable Filter. 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. More...
class  Unfold
 Unfold two-dimensional realvec into one-dimensional realvec. More...
class  Vibrato
 Applies vibrato using time-varying delay. More...
class  Whitening
 Changes a spectrum so that all bins have the same phase, but magnitude equal to 1. 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.