% Modify the following variables to include the locations 
% of the libraries and the dataset in your own system
scatnet_path = [pwd, '/../libraries/scatnet-0.2/'];
libsvm_compact_path = [pwd, '/../libraries/libsvm-compact-0.1/'];
global gtzan_path;
gtzan_path = '/import/c4dm-datasets/gtzan/';
global results_dir;
results_dir = [pwd, '/results/'];
%

fprintf('\n**********\nAdding the necessary folders to Matlab path\n**********\n');
run([scatnet_path, 'addpath_scatnet.m']);
addpath([libsvm_compact_path, 'matlab']);

mfilepath=fileparts(which(mfilename));
addpath(fullfile(mfilepath,'dss/experiments/'));
addpath(fullfile(mfilepath,'dss/folds/'));
addpath(fullfile(mfilepath,'dss/classification/'));

fprintf('\n**********\nSTARTING TO RUN EXPERIMENTS\n**********\n');
cd dss;

global src;
src = gtzan_src(gtzan_path);

fprintf('\n**********\nFEATURE SET (a)\n**********\n');
fprintf('\n**********\nMFCC, T=740ms\n**********\n');
exp_mfcc_740ms;
fprintf('\n**********\nFEATURE SET (b)\n**********\n');
fprintf('\n**********\nTime Scattering, l=1\n**********\n');
exp_time_scat_l1;
fprintf('\n**********\nFEATURE SET (c)\n**********\n');
fprintf('\n**********\nTime Scattering, l=2\n**********\n');
exp_time_scat_l2;
fprintf('\n**********\nFEATURE SET (d)\n**********\n');
fprintf('\n**********\nTime and Frequency Scattering, l=2\n**********\n');
exp_time_freq_scat_l2;
fprintf('\n**********\nFEATURE SET (e)\n**********\n');
fprintf('\n**********\nTime and Frequency Scattering, l=2, Adaptive Q1\n**********\n');
exp_time_freq_scat_l2_adap_q1;        
fprintf('\n**********\nFEATURE SET (f)\n**********\n');
fprintf('\n**********\nTime Scattering, l=3\n**********\n')
exp_time_scat_l3;

quit;

