Marsyas
0.5.0beta1

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 
AttackDecaySustainRelease 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 realtime, by a given score function (heuristics), around each predicted beat. According to the goodnessoffit 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 goodnessoffit 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 
CARFAC 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 attackrelease 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 onepole 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 groundtruth mode which inputs the first two beats retrieved from a groundtruth beat times annotation file, for initially assigning (only) one agent with the groundtruth 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, nearestneighbour, 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 viceversa) 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 twodimensional realvec into onedimensional realvec. More...  
class  Vibrato 
Applies vibrato using timevarying 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... 
These MarSystems process realvecs. There is a separate list of simple processing blocks; this list includes both simple and advanced processing blocks.