diff demo_batchProcessing.m @ 13:1a058eb51073

degradation folder re-sort; towards more comprehensive batch processing demo
author matthiasm
date Thu, 24 Oct 2013 20:26:35 +0100
parents 9d682f5e3927
children c3a002ed2815
line wrap: on
line diff
--- a/demo_batchProcessing.m	Wed Aug 21 19:18:46 2013 +0100
+++ b/demo_batchProcessing.m	Thu Oct 24 20:26:35 2013 +0100
@@ -18,7 +18,7 @@
 %
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-addpath(fullfile(pwd,'AudioDegradationToolbox'));
+addpath(genpath(fullfile(pwd,'AudioDegradationToolbox')));
 
 % the following file should list all the files to process. Every line
 % should specify one audio file, one audio file and a ground truth file in
@@ -39,6 +39,17 @@
 % destination directory
 outputDirectory = 'demoOutput/';
 
+% desired degradations
+degradationnames = {'liveRecording', ...
+                    'pubEnvironment', ...
+                    'radioBroadcast', ...
+                    'smartPhonePlayback', ...
+                    'smartPhoneRecording', ...
+                    'strongMp3Compression', ...
+                    'vinylRecording', ...
+                    'unit_addSound', ...
+                    'unit_addNoise'};
+nDegradation = length(degradationnames);
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -106,85 +117,21 @@
         remainingColumns = data{2};
     end
     
-    % Start the degradation process
+    % apply degradations
     %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'liveRecording';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
+    for iDegradation = 1:nDegradation
+        degradationname = degradationnames{iDegradation};
+        PathToOutput = fullfile(outputDirectory,degradationname);
+        if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
+        [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
+
+        if ~isempty(audiofilename)
+            wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
+        end
+        if ~isempty(csvfilename)
+            writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
+        end
     end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'strongMp3Compression';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
-    end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'vinylRecording';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
-    end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'radioBroadcast';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
-    end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'smartPhoneRecording';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
-    end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
-    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    degradationname = 'smartPhonePlayback';
-    PathToOutput = fullfile(outputDirectory,degradationname);
-    if ~exist(PathToOutput,'dir') mkdir(PathToOutput); end
-    [f_audio_out,timepositions_afterDegr] = applyDegradation(degradationname, f_audio, samplingFreq, timepositions_beforeDegr);
-    
-    if ~isempty(audiofilename)
-        wavwrite(f_audio_out,samplingFreq,nbits,fullfile(PathToOutput,audiofilename));
-    end
-    if ~isempty(csvfilename)
-        writeCsvFile(fullfile(PathToOutput,csvfilename),timepositions_afterDegr,remainingColumns);
-    end
-    
 end
 
 end