University of Illinois Graduate School of Library and Information Science ISRL
MODULE NAME  PACKAGE  FUNCTION/DESCRIPTION 
AudioTempoExtractionEvaluator 
evaluation 
Evaluates tempo
transcription algorithms 
ClassificationResultRead 
evaluation 
Reads in ground truth and
classification result 
DrumDetectionEvaluator 
evaluation  Evaluates a detected set
of drum transcriptions 
KeyFindingAccuracy 
evaluation  Calulates accuracy of key
finding results 
McNemarsTest 
evaluation  Compares input Signal
arrays with McNemar's test 
MelodySimilarityEvaluator1 
evaluation  Evaluates sybolic melody
similarity algorithms 
MelodyTranscriptionEvaluator 
evaluation  Evaluates melody
transcription algorithms 
OnsetDetectionEvaluator 
evaluation  Evaluates a detected set
of musical event onset times 
RankAlgorithms 
evaluation  Ranks the output of
multiple algorithms 
ReadDrumDetectionTextFile 
evaluation  Reads in a text file of
drum detection and outputs a Signal object containing the detection 
ReadKeyTextFile 
evaluation  Reads a text file of the
musical key of a music file and outputs a Signal object containing the
key 
ReadMelodyExtractionTextFile 
evaluation 
Reads a text file of
a predominant melody F0 estimate 
ReadOnsetTextFile 
evaluation 
Reads a text file of note
onsets and outputs a Signal object containing the onsets 
ReadSFSAnnotationFile 
evaluation 
Reads in drum detection
text files and outputs the onsets and drum type in a Signal object 
ReadTempoExtractionTextFile 
evaluation 
Reads a text file of
tempo extractions and outputs a Signal object containing the onsets 
SignTest 
evaluation 
Compares input Signal arrays with Sign test 
SignalArrayAccuracy 
evaluation 
Calculates the accuracy
of the classifications of the Signals in the input array 
StudentTTest 
evaluation 
Compares input Signal
arrays with Student T test 
MelFilterBank  filters  Passes input through a MelFilterBank 
OnePoleFilter  filters  Passes input through a One pole filter 
OneZeroFilter  filters  Passes input through a One zero filter 
SpectralContrastFilter 
filters 
Passes input spectrum
through Octavescale nonoverlapping filters 
AudioFilePlayerModule 
io 
An MP3
AudioPlayer, based on Javazoom JLayer. 
AudioFileRead 
io 
Buffered audio file
reading for a number of different audio file formats. The data is
framed and streamed out. 
AudioSegmentPlayerModule 
io 
An MP3
and WAV AudioPlayer, based on Javazoom JLayer. Allows
one to play any segments in the file 
AudioSegmentSequencePlayerModule 
io 
An audio segment
sequencer and player. 
CreateFileListForClass  io  Creates FileListForClass objects 
CreateSignalList  io  Creates an array of Signal objects 
CreateSignals  io  Creates a stream of empty Signal objects 
InitSignalArrayFromListFile 
io 
Reads file names and
labels from a file, initialises a Signal array and outputs it. 
InputSignalArrays 
io 
Reads individual files,
all files within a directory, all files in a directory tree, or any
conbination thereof, and outputs them as signal objects 
InputSignals 
io 
Reads individual files,
all files within a directory, all files in a directory tree, or any
conbination thereof, and outputs them as signal arrays 
PreCacheASCIISignal 
io 
receives in a Signal
Object, and saves it to disk as an ASCII file 
Print1DDArray  io  Prints a 1 dimensional double array 
Print2DDArray  io  Prints a 2 dimensional double array 
PrintSignal 
io

Prints the toString() of
input Signal objects 
ReadASCIISignal 
io

Reads a signal cached in
ASCII format 
ReadCached Signal  io  Reads a cached signal 
ReadMarsyas01FeatureFiles  io  Reads features files with labels from Marsyas 
ReadSerializedObject 
io 
Reads in a Serialized
object 
ReadSerializedSignalArrays  io  Reads serialized Signal Array objects from the
location specified in input file objects 
ReadSerializedSignalOject  io  Reads serialized Signal objects from the location specified in input file objects 
SerializeObject 
io 
Serializes an object and
writes it to a file 
SignalToFileObject 
io 
Takes a Signal object and
outputs a File object at the place specified by the Signal's
file_location metadata 
SignalWaveRead  io  Read in a Signal object, output a double array 
SimpleASCIISignalREader 
io 
receives in Signal
Objects and reads in it from an ASCII file and outputs it. 
StreamDirectoryFiles  io  Streams files specified in a given directory 
StreamFilesFromFileListFile  io  Streams files specified in a list 
WaveGenerator  io  Generate a sine wave 
WavRead  io  Reads .wav files and outputs samples in double arrays 
Write1DDoubleArrayToFile  io  Writes a double array to a file 
Write1DDoubleArrayToTable  io  Writes a double array to a table 
Write1DDoubleArraysToFiles  io  Writes multiple double arrays to files 
Write2DDoubleArrayToFile  io  Writes a 2D double array to a file 
Write2DDoubleArraysToFiles  io  Writes multiple 2D double arrays to files 
WriteFileListForSignalArray 
io 
Takes a Signal array and
writes the filenames and class metadata of the Signals to a file 
WriteFileListsToTextFile  io  Write a stream of FileListWithClass to a text file 
WriteSignalArrayToTable  io  Write data and all metadata in a signal to a table 
WriteSignalToTable  io  Create FileListForClass objects 
Abs  math  Absolute value of real 1Darrays/vectors (fullwave rectifier) 
Angle  math  Phase angle of complex numbers 
Centroid  math  Centroid of input vector 
DifferenceBetweenFrames  math  Difference between frames (deltas and accelerations) 
ElementAdd  math  Array/Vector Addition 
ElementMultiply  math  Element by Element multiplication of vectors 
Entropy  math  Computes the entropy of input arrays 
Flux  math  Flux of successive 1Darrays/vectors 
HalfWaveRectifier  math  Half wave rectifier 
HistogramDoubleArray  math  Prepares a histogram from an input double array 
InnerProduct  math  Dot product of two 1Darrays 
LinearRegression  math  Computes a linear regression from succesive input
arrays 
Log  math  Logarithm base e 
Log10  math  Logarithm base 10 
Log2  math  Logarithm base 2 
Magnitude  math  Computes the magnitude of complex numbers 
Mean  math  Computes the mean of 1Darray/vector 
MeanArray 
math 
Computes the means of
input arrays and outputs an array of the mean values of input arrays 
MeanSpread  math  Computes the spread of input arrays, 
MedianDynamicThreshold  math  Peak picker for onset detection 
Norm  math  Calculates 1,2,inf,inf,p norms of input 
NormaliseFunction  math  Normalizes the input 
PhaseDeviation  math  Computes the deviation of a phase from its target
value, which is calculated from the previous two values. 
Pow  math  Raise to specified power 
ScalarMultiply  math  Mutiply a 1Darrays with a scalar gain 
SignalMeanandVariance  math  Computes Means and Variances of input Signal objects 
SignalMeanandVariance2  math 
Computes Means and
Variances of input Signal objects, based on Onset detection metadata 
SignalMedianDynamicSilenceGate 
math 
Computes a dynamic median
threshold of the input function, which is used to peakpick the input
function 
SignalMedianDynamicThreshold 
math 
Computes a dynamic median threshold of the input function, which is used to peakpick the input function 
SignalSquaredEuclideanDistance 
math 
Calculates Squared
Euclidean distance of columns of two Signal Objects 
SpectralRollOff  math  Compute the rolling off point of the input array 
Spread  math  Compute the spread of input array 
Sqrt  math  Squareroot 
StreamMeanAndVariance  math  Computes Means and Variances of elements of array streams 
SumArray  math  Calculates the sum of input arrays 
Variance  math  Variance of 1Darray/vector 
ZeroCrossings  math  Number of zerocrossings in a 1Darray/vector 
ApplySignalClassifier 
modelling 
Applies a
SignalClassifier model to novel inputs in the form of an array of
Signal objects 
ApplySignalClassifierForLikelihoods 
modelling 
Applies a
SignalClassifier model to novel inputs in the form of an array of
Signal objects to which the likelihoods of class membership are added 
ApplySignalGaussian  modelling 
Applies Signal Gaussian model to input Signal array 
SignalGaussianTrainer  modelling 
Trains a Gaussian model on input Signal array 
TrainErgodicHMM 
modelling.jahmm 
Takes an array of Signal
objects and trains an Ergodic HMM on them using Jahmm 
ApplyFishersLinearDiscriminantModel 
modelling.linearDiscriminantAnalysis 
Applies a Fisher's
Criterion Linear Discriminant classifier to an input array of Signal
objects 
ApplyOneAgainstAllLDAModel 
modelling.linearDiscriminantAnalysis  Applys a multiClass
Linear Discriminant Analysis model to novel inputs of an array of
Signal objects 
TrainFishersLinearDiscriminantModel 
modelling.linearDiscriminantAnalysis  Takes an array of Signal
objects and trains a Fisher's Criterion Linear Discriminant model on
them 
TrainOneAgainstAllLDAModel 
modelling.linearDiscriminantAnalysis  Takes an array of Signal
objects and trains a Fisher's Criterion Linear Discriminant model
on them 
ApplyFullTrainedModelCombiner 
modelling.modelCombiners 
Applies model combiners
based on the FullTrainedModelCombiner interface (for classifier
ensembles and bagging systems) 
ApplyFullTrainedModelCombinerForLikelihoods  modelling.modelCombiners  Applies model combiners based on the FullTrainedModelCombiner interface to combine the likeliboods (for classifier ensembles and bagging systems) 
ApplyFullTrainedModelCombinerToSignalFor Likelihoods 
modelling.modelCombiners  Same as above, but input
is a single Signal object, instead of a Signal array 
TrainConstrainedRegressionCombiner 
modelling.modelCombiners  Trains a Constrained
Regression model to combine input likelihoods 
TrainDecisionTemplateCombiner 
modelling.modelCombiners  Trains a Decision Template to combine input likelihoods 
TrainGaussianDecisionTemplateCombiner 
modelling.modelCombiners  Trains a Gaussian
Decision Template to combine input likelihoods 
TrainModelCombinerModuleImpl  modelling.modelCombiners 
An abstract base
implementation of a module for training model combiners 
ApplySingleGaussian  modelling.singleGaussian  Applies a Single Gaussian
Model to inputs of an array of Signal objects 
SingleGaussianTrainer  modelling.singleGaussian  Takes an array of Signal objects and trains a single Gaussian model on them 
Template 
my_modules 
A module template to help
users write their own modules 
DetectBadDataInSignals 
testing 
Scans input Signal
objects for bad data 
GenerateImpulse 
testing 
Generates 1D double
array of impulse values for testing purposes 
GenerateRamp 
testing 
Generates 1D double array of ramp values for testing purposes 
GenerateTriggerStream 
testing 
Generates a number of objects (triggers) for testing purposes 
GenerateWhileNoise 
testing 
Generates 1D double array of while noise values for testing purposes 
DCT  transforms  Discrete Cosine Transform 
FFT  transforms  General FFT and iFFT 
FFTReal  transforms  FFT of real inputs 
PCA  transforms  Performs a Principal Componouts Analysis on an input
Singal array 
ApplyFishersLinearDiscriminantTransform  transforms  Applies a Fisher's Criterion Linear Discriminant transform on an novel input Signal array 
TrainAndApplyFishersLinearDiscriminant Transform 
transforms  Trains and applies a Fisher's Criterion Linear
Discriminant transform on an input Signal array 
ApplyFishersLinearDiscriminantTransform  transforms. linearDiscriminantTransform 
Applies a Fisher's Criterion Linear Discriminant transform on an novel input Signal array 
ApplyOneAgainstAllLDATransform 
transforms. linearDiscriminantTransform 
Applies an
oneagainstall LDA transform on an
novel input Signal array 
TrainAndApplyFishersLinearDiscriminant Transform 
transforms. linearDiscriminantTransform 
Trains and applies a Fisher's Criterion Linear Discriminant transform on an input Signal array 
TrainAndApplyOneAgainstAllLDATransform 
transforms. linearDiscriminantTransform 
Trains and applies an oneagainstall LDA transform on an input Signal array 
ApplyPCA 
transforms. principalComponentsAnalysis 
Applies a Principal Components Analysis transform on an novel input Signal array 
TrainAndApplyPCA 
transforms. principalComponentsAnalysis 
Trains and applies a PCA transform on an input Signal array 
Accuracy  util  Measures label accuracy 
AddIntMetadataToSignal  util  Add input integer to the metadata of input Signal 
AppendArrayToSignal  util  Append input array to input Signal 
AppendMatrixStreamToSignal  util  Append Matrix stream to input Signal 
AppendTimeStampsToSignal  util  Append timestamp to each frame of input Signal 
Collect1DDArrayStreamInto2DDArray  util  Collects an 1D double array input stream into a 2D
double array 
CollectSignals  util  Collect a Signal stream into Signals arrays according
to their class labels 
CollectSignalsInto1SignalPerClass  util  Collects an input of Signal objects into a Single Signal Object for each class 
Concatenate1DDArrayStream  util  Concatenates a stream of double arrays into one double
array 
Concatenate1DDArrays  util  Concatenates 1DDArrays/Vectors 
CopyMetadataFromSignal  util  Copies the specified metadata from one input Signal object to another 
CopyMetadataFromSignalArray  util  Copies the specified metadata from one input Signal
array to another 
CreateTestAndTrainSets  util  Collect a FileListWithClass stream and divide them into a test and training set 
CreateTestandTrainSignalArrays  util  Collect Signal arrays and divide them into a test and training set 
DateSplitter 
util 
Divides data from each
Signal object in a Signal array into two groups 
DeleteDataFromSignal  util  Deletes the data matrices from input Signal objects 
DeleteDataFromSignalArrays  util  Delectes the data matrices from input Signal arrays 
DivideSignalArray 
util 
Divides a Signal array
into two arrays 
Downsample  util  Resample using every nth samples 
Enframe  util  Frames input with certain frame size and overlap 
ExternalIntegrationModule  util  Executes external commands 
GateKeeper 
util 
Controls dataflow
execution, by only allowing input through when trigger signals are
received 
IntArrayAccuracy  util  Accuracy and confusion matrix from labels 
Length  util  Caculate the length of a 1D array 
MatlabIntegrationModule  util  Interface for MATLAB 
MatlabTwoInputIntegrationModule  util  Interface for MATLAB, 2 inputs 
NFoldCrossvalidatedSignalArrays  util  Collect Signal arrays and split them into N fold test and traing sets 
NFoldCrossvalidatedSignalArray 
util 
Splits an input Signal
array into N fold test and training sets 
OrderedFanIn 
util 
Takes in a number of
inputs and outputs them, in the order of the input pipes 
PopulateSignal  util  Populate an input Signal with input data frames 
Stereo2Mono  util  Converts stereo signals to mono 
StreamColumnsOfSignalOut  util  Produces a nullterminated stream of the columns of a Signal 
StreamSignalsFromArray  util  Stream out a stream of Signal arrays as Signal objects 
StripMetadataFromSignalArrays  util  Either copies the Signal array and strip the specified metadata from the copy or just strip the metadata from the original Signal array 
StripMetadataFromSignals  util  Either copies the Signal object and
strip the specified metadata from the copy or just strip the metadata
from the original Signal object 
TranscriptionMapper 
util 
Maps a transcription from
one format to another 
Truncate1DDArray  util  Truncates 1DArrays to specified length 
TwoInputExternalIntegrationModule  util  Executes external commands, allows for 2 inputs 
Upsample  util  Insert (n1) zeros between samples 
Window  util  Applies specified window type to 1Darray/vector 
Zeropad  util  Zeropads input 1Darray/vector 
Histogram 
vis 
Plots a histogram of
input data 
Package 
Number of Modules 
evaluation 
18 
filters 
4 
io 
37 
math 
37 
modelling 
18 
my_modules 
1 
testing 
5 
transforms 
12 
util 
41 
vis 
1 
Total  174 
ITINERARIES  DESCRIPTION 
DecisionTreeC45  Creates a Decision Tree Model 
DEMO1stOrderEnergyDifferenceOnsetDetection  Determines note onset times in an input audio file, and generates visualizations for various derived note onset data 
DEMOFeatureExtractionToC45DT  Demonstrates audio feature extraction from .wav files belonging to three different classes. Classification is then performed using a D2K core C4.5 decision tree. 
DEMOFeatureExtractionToFile  Demonstrates audio feature extraction from .wav files belonging to three different classes, and outputs the features to a file. 
DEMOFeatureExtractionToNaiveBayes  Demonstrates audio feature extraction from .wav files belonging to three different classes. Classification is then performed using a D2K core Naïve Baysian model. 
DEMOFeatureExtractionToNeuralNet  Demonstrates audio feature extraction from .wav files belonging to three different classes. Classification is then performed using a D2K core Neural Net classifier. 
DEMOSignalGaussianMFCCClassification  Performs a single Gaussian classification of three classes using MFCC's as features 
FeatureExtraction  Performs audio feature extraction on input Signal arrays 
MFCCFromSignal  Calculates MelFrequency Cepstral Coefficients (MFCCs) for each Signal object in an input stream of Signal object arrays 
NaiveBayes  Creates a Naive Bayes Model 
NeuralNetwork  Creates a Neural Network Model 
MIREX frameworks 

ITINERARIES 
FOLDERS 
DESCRIPTION 
MIREX05ArtistIdentification1 
Audio
artist identification 
Evaluates an artists
identification algorithm which combines feature extaction, model
training and classification in one module 
MIREX05ArtistIdentification1_MATLAB  Audio artist identification  Evaluates an artists identification algorithm written in MATLAB which combines feature extaction, model training and classification into one module 
MIREX05ArtistIdentification2  Audio artist identification  Evaluates an artists identification algorithm which has separate modules for feature extaction, model training and classification 
MIREX05ArtistIdentification2_MATLAB  Audio artist identification  Evaluates an artists identification algorithm written in MATLAB which has separate modules for feature extaction, model training and classification 
MIREX05ArtistIdentification3  Audio artist identification  Evaluates an artists identification algorithm which has one module for feature extaction and another for model training and classification 
MIREX05ArtistIdentification3_MATLAB  Audio artist identification  Evaluates an artists identification algorithm written in MATLAB which has one module for feature extaction and another for model training and clasombines feature extaction, model training and classification in one module 
Audio genre
classification marsyas example itinerary 
Audio genre classification  Example itinerary evaluating an audio genre classification algorithm written in external programs, taking Marsyas as an example 
Genre identification
evaluator test itinerary 
Audio genre classification  Evaluates an audio genre classification algorithm, given ground truth and classification results in text files 
MIREX05GenreIdentification1  Audio genre classification  Evaluates an audio genre classification algorithm which combines feature extaction, model training and classification in one module 
MIREX05GenreIdentification1_MATLAB 
Audio genre classification  Evaluates an audio genre classification algorithm written in MATLAB which combines feature extaction, model training and classification in one module 
MIREX05GenreIdentification2  Audio genre classification  Evaluates an audio genre classification algorithm which has separate modules for feature extaction, model training and classification 
MIREX05GenreIdentification2_MATLAB  Audio genre classification  Evaluates an audio genre classification algorithm written in MATLAB which has separate modules for feature extaction, model training and classification 
MIREX05GenreIdentification3  Audio genre classification  Evaluates an audio genre classification algorithm which has one module for feature extaction and another for model training and classification 
MIREX05GenreIdentification3_MATLAB  Audio genre classification  Evaluates an audio genre classification algorithm written in MATLAB which has one module for feature extaction and another for model training and classification 
Key finding evaluation
test itinerary 
Audio
key finding 
Evaluates key finding
algorithms, given ground truth and key detection results in text files 
MIREX05KeyDetectionEvaluation 
Audio key finding  Evaluates a key finding algorithm 
MIREX05KeyDetectionEvaluation_MATLAB  Audio key finding  Evaluates a key finding
algorithm written in MATLAB 
Audio tempo extraction
evaluation test itinerary 
Audio
tempo extraction 
Evaluates audio tempo extraction results, given ground truth and extraction results in text files 
MIREX05AudioTempoExtraction 
Audio tempo extraction  Evaluates an audio tempo
extraction algorithm 
MIREX05AudioTempoExtraction_MATLAB  Audio tempo extraction  Evaluates an audio tempo
extraction algorithm written in MATLAB 
Drum transcription
evaluator test itinerary1 
Drum
transcription 
Evaluates drum
transcription results, given ground truth and drum transcription
results in text files 
Drum transcription evaluator test itinerary2  Drum transcription  same as above, but with
different drum transcription results as input 
Drum transcription evaluator test itinerary3  Drum transcription  same as above, but with
different drum transcription results as input 
Drum transcription evaluator test itinerary4  Drum transcription  same as above, but with
different drum transcription results as input 
MIREX05DrumDetectionEvaluation 
Drum transcription  Evaluates a drum
detection algorithm 
MIREX05DrumDetectionEvaluation_MATLAB  Drum transcription  Evaluates a drum
detection algorithm written in MATLAB 
Marsyas audio genre
classificaiton example 
Example
submissions 
An example of Evaluating
an audio genre classification algorithm written in external programs 
Matlab audio genre
classification example 
Example
submissions 
An example of Evaluating an audio genre classification algorithm written in external programs 
Melodic similarity
evaluation test itinerary 
Melodic
similarity 
Evaluates symbolic melody
similarity results, given ground truth and symbolic similarity results
in text files 
MIREX05MelodicSimilarityEvaluation 
Melodic
similarity 
Evaluates a symbolic
melody similarityl algorithm 
MIREX05MelodicSimilarityEvaluation_MATLAB  Melodic similarity  Evaluates a symbolic
melody similarityl algorithm written in MATLAB 
Melody extraction
evaluator test itinerary 
Melody
extraction 
Evaluates melody extraction results, given ground truth and drum transcription results in text files 
MIREX05MelodyExtractionEvaluation 
Melody extraction  Evaluates a melody extraction algorithm 
MIREX05MelodyExtractionEvaluation_MATLAB  Melody extraction  Evaluates a melody
extraction algorithm written in MABLAB 
Onset detection evaluator
test itinerary 
onset
detection 
Evaluates onset detection results, given ground truth and onset detection results in text files 
MIREX05OnsetDetectionEvaluation  onset detection  Evaluates a onset detection algorithm 
MIREX05OnsetDetectionEvaluation_MATLAB  onset detection  Evaluates a onset
detection algorithm written in MATLAB 
Audio genre
classification marsyas example 
Symbolic
genre classification 
Evaluates a genre classification algorithm written in external programs, taking Marsyas as an example 
Genre identification
evaluator test itinerary 
Symbolic
genre classification 
Evaluates a genre classification algorithm, given ground truth and classification results in text files 
MIREX05GenreIdentification1 
Symbolic genre classification  Evaluates a symbolic genre classification algorithm written in MATLAB which combines feature extaction, model training and classification in one module 
MIREX05GenreIdentification1_MATLAB  Symbolic genre classification  Evaluates a symbolic genre classification algorithm written in MATLAB which combines feature extaction, model training and classification in one module 
MIREX05GenreIdentification2  Symbolic genre classification  Evaluates a symbolic genre classification algorithm which has separate modules for feature extaction, model training and classification 
MIREX05GenreIdentification2_MATLAB  Symbolic genre classification  Evaluates a symbolic genre classification algorithm written in MATLAB which has separate modules for feature extaction, model training and classification 
MIREX05GenreIdentification3  Symbolic genre classification  Evaluates a symbolic genre classification algorithm which has one module for feature extaction and another for model training and classification 
MIREX05GenreIdentification3_MATLAB  Symbolic genre classification  Evaluates a symbolic genre classification algorithm written in MATLAB which has one module for feature extaction and another for model training and classification 
Key finding evaluator
test itinerary 
Symbolic
key finding 
Evaluates key finding results, given ground truth and key detection results in text files 
MIREX05KeyDetectionEvaluation  Symbolic key finding  Evaluates a key finding algorithm 
MIREX05KeyDetectionEvaluation_MATLAB  Symbolic key finding  Evaluates a key finding algorithm written in MATLAB 
Folders  Number of Itineraries 
stand
alone 
11 
MIREX frameworks/Audio artist identification  6 
MIREX frameworks/Audio genre classification  8 
MIREX frameworks/Audio key finding  3 
MIREX frameworks/Audio tempo extraction  3 
MIREX frameworks/Drum transcription  6 
MIREX frameworks/Example submissions  2 
MIREX frameworks/Melodic similarity  3 
MIREX frameworks/Melody extraction  3 
MIREX frameworks/onset detection  3 
MIREX frameworks/Symbolic genre classification  8 
MIREX frameworks/Symbolic key finding  3 
Total 
48 
Maintained by: J.
Stephen Downie
Comments to: jdownie at uiuc dot edu
Last modified: 27 October 2005