Mercurial > hg > smallbox
diff util/SMALL_playAudio.m @ 1:7750624e0c73 version0.5
(none)
author | idamnjanovic |
---|---|
date | Thu, 05 Nov 2009 16:36:01 +0000 |
parents | |
children | 33850553b702 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/util/SMALL_playAudio.m Thu Nov 05 16:36:01 2009 +0000 @@ -0,0 +1,40 @@ +function SMALL_playAudio(SMALL) + % Ivan Damnjanovic 2009 + % Function gets as input SMALL structure and play the original and + % the reconstructed signal + + +ch=''; +while 1 + request = input('\nWhat do you want to hear? \n 1. Original signal \n 2. Mixed \n 3. Reconstructed signal \n 4. Quit player\n','s'); + request = sscanf(request,'%d'); + switch request + case 1 + fprintf('Original signal has %d sources.\n Which one do you want to hear?', size(SMALL.Problem.signal,2)) + fprintf('Enter a number between 1 and %d', size(SMALL.Problem.signal,2)) + ch=input('','s'); + ch=sscanf(ch,'%d'); + if (ch>=1)&&(ch<=size(SMALL.Problem.signal,2)) + soundsc(SMALL.Problem.signal(:,ch),8000); + end + case 2 + fprintf('Number of channels in mixed signal is %d.\n Which one do you want to hear?', size(SMALL.Problem.b,2)) + fprintf('Enter a number between 1 and %d', size(SMALL.Problem.signal,2)) + ch=input('','s'); + ch=sscanf(ch,'%d'); + if (ch>=1)&&(ch<=size(SMALL.Problem.b,2)) + soundsc(SMALL.Problem.b(:,ch),8000); + end + case 3 + fprintf('Reconstructed signal has %d sources.\n Which one do you want to hear?', size(SMALL.solver.reconstructed,2)) + fprintf('Enter a number between 1 and %d', size(SMALL.Problem.signal,2)) + ch=input('','s'); + ch=sscanf(ch,'%d'); + if (ch>=1)&&(ch<=size(SMALL.solver.reconstructed,2)) + soundsc(SMALL.solver.reconstructed(:,ch),8000); + end + case 4 + return; + end +end +end