Extracting a segment from sound file
Mostrar comentarios más antiguos
Hi,
I have a wave file of 100 seconds. And I have a excel file where I marked some areas of that file with start and stop times. like first segment: 2.5 to 3.4 seconds, second segment: 4.6 to 5.2 seconds and so on.
Now, I want to do the following things:
1. I first read the wav file, 2. then read the excel file for start and stop times, 3. then cut the segments from the wave file according to the excel file.
I know the 1st and 2nd part. but stuck in the 3rd one. Please let me know, how to do the 3rd part for this.
3 comentarios
Image Analyst
el 31 de Oct. de 2014
It would make it easier for people to develop some simple code for you if you attached the wav and xlsx files.
Odrisso
el 31 de Oct. de 2014
Image Analyst
el 31 de Oct. de 2014
I think this was maybe a reply for Rick. I didn't ask for this. I suggested you attach the two files . You can still do that. Click paperclip, then "Choose file" then "Attach file". You have to do each one at a time, you can't multi-select files.
Respuestas (1)
Rick Rosson
el 31 de Oct. de 2014
Editada: Rick Rosson
el 1 de Nov. de 2014
Here are a few pages from the documentation that will help:
And here is a possible solution that should get you started:
[x,Fs] = audioread('myaudiofile.wav');
[M,N] = size(x);
dt = 1/Fs;
t = dt*(0:M-1)';
figure;
plot(t,x);
segments = xlsread('mydatafile.xlsx','C15:D24');
L = size(segments,1);
for k = 1:L
idx = ( segments(k,1) < t ) & ( t < segments(k,2) ) ;
figure;
plot(t(idx),x(idx));
end
3 comentarios
Odrisso
el 31 de Oct. de 2014
Rick Rosson
el 31 de Oct. de 2014
I had not finished my answer yet. Please check it now.
Odrisso
el 31 de Oct. de 2014
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!