Mercurial > hg > audio-degradation-toolbox
diff demo_degradations.m @ 4:053a55a91d20
- pimped the demos
- re-added some missing degradation data
author | SebastianEwert |
---|---|
date | Tue, 20 Aug 2013 16:35:54 +0100 |
parents | 9d682f5e3927 |
children | a4173509bc43 |
line wrap: on
line diff
--- a/demo_degradations.m Tue Aug 20 12:31:29 2013 +0100 +++ b/demo_degradations.m Tue Aug 20 16:35:54 2013 +0100 @@ -4,7 +4,7 @@ % % Centre for Digital Music, Queen Mary University of London. % This file copyright 2013 Sebastian Ewert, Matthias Mauch and QMUL. -% +% % This program is free software; you can redistribute it and/or % modify it under the terms of the GNU General Public License as % published by the Free Software Foundation; either version 2 of the @@ -27,65 +27,104 @@ pathOutputDemo = 'demoOutput/'; if ~exist(pathOutputDemo,'dir'), mkdir(pathOutputDemo); end -%% -filename = 'testdata/p009m_drum.wav'; -[f_audio,samplingFreq]=wavread(filename); +filenames = { + 'testdata/RWC_G39.wav'; + 'testdata/RWC_G72.wav'; + 'testdata/RWC_G84.wav'; + 'testdata/RWC_P009m_drum.wav'; + 'testdata/RWC-C08.wav'; + }; -f_audio_out = applyDegradation('liveRecording', f_audio, samplingFreq); - -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation01_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation01_out.wav')); - +createSpectrograms = 0; %% -filename = 'testdata/p009m_drum.wav'; -[f_audio,samplingFreq]=wavread(filename); - -f_audio_out = applyDegradation('strongMp3Compression', f_audio, samplingFreq); - -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation02_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation02_out.wav')); - +% just copying original files to the demo folder +for k=1:length(filenames) + copyfile(filenames{k}, fullfile(pathOutputDemo,sprintf('00_Original_file%d.wav',k))) + if createSpectrograms + [f_audio,samplingFreq]=wavread(filenames{k}); + [s,f,t] = spectrogram(f_audio,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('00_Original_file%d.png',k))) + end +end %% -filename = 'testdata/RWC-C08.wav'; -[f_audio,samplingFreq]=wavread(filename); - -f_audio_out = applyDegradation('vinylRecording', f_audio, samplingFreq); - -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation03_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation03_out.wav')); - +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('liveRecording', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_01_liveRecording_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_01_liveRecording_file%d.png',k))) + end +end %% -filename = 'testdata/RWC-C08.wav'; -[f_audio,samplingFreq]=wavread(filename); - -f_audio_out = applyDegradation('radioBroadcast', f_audio, samplingFreq); - -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation04_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation04_out.wav')); - +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('strongMp3Compression', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_02_strongMp3Compression_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_02_strongMp3Compression_file%d.png',k))) + end +end %% -filename = 'testdata/RWC-C08.wav'; -[f_audio,samplingFreq]=wavread(filename); - -f_audio_out = applyDegradation('smartPhoneRecording', f_audio, samplingFreq); - -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation05_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation05_out.wav')); - +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('vinylRecording', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_03_vinylRecording_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_03_vinylRecording_file%d.png',k))) + end +end %% -filename = 'testdata/RWC-C08.wav'; -[f_audio,samplingFreq]=wavread(filename); +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('radioBroadcast', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_04_radioBroadcast_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_04_radioBroadcast_file%d.png',k))) + end +end -f_audio_out = applyDegradation('smartPhonePlayback', f_audio, samplingFreq); +%% +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('smartPhoneRecording', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_05_smartPhoneRecording_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_05_smartPhoneRecording_file%d.png',k))) + end +end -wavwrite(f_audio,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation06_in.wav')); -wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,'audio_degradation06_out.wav')); - +%% +for k=1:length(filenames) + [f_audio,samplingFreq]=wavread(filenames{k}); + + f_audio_out = applyDegradation('smartPhonePlayback', f_audio, samplingFreq); + + wavwrite(f_audio_out,samplingFreq,16,fullfile(pathOutputDemo,sprintf('Degr_06_smartPhonePlayback_file%d.wav',k))); + if createSpectrograms + [s,f,t] = spectrogram(f_audio_out,hamming(round(samplingFreq*0.093)),round(samplingFreq*0.093/2),[],samplingFreq); + figure; imagesc(t,f,log10(abs(s)+1)); axis xy; colormap(hot); ylim([0,8000]); colorbar; print('-dpng', fullfile(pathOutputDemo,sprintf('Degr_06_smartPhonePlayback_file%d.png',k))) + end +end %% % Some degradations delay the input signal. If some timepositions are given