annotate Code/Descriptors/Matlab/Common/removeSilentData.m @ 4:92ca03a8fa99 tip

Update to ICASSP 2013 benchmark
author Dawn Black
date Wed, 13 Feb 2013 11:02:39 +0000
parents ea0c737c6323
children
rev   line source
dawn@0 1 function [ silentFrames ] = removeSilentData( silentSegments, noOfFrames )
dawn@0 2
dawn@0 3 %---------------- GET THE SILENT FRAME VALUES -------------------
dawn@0 4 % only wish to consider values from voiced frames.
dawn@0 5 % silent frames will produce data values that
dawn@0 6 % are random and therefore will bias our results
dawn@0 7 % returns an array of values where '1' indicates a non-silent frame
dawn@0 8
dawn@0 9 silentFrames = zeros(1,noOfFrames);
dawn@0 10 [m n] = size(silentSegments);
dawn@0 11 if( silentSegments(1,1) == 0 && silentSegments(1,2) == 0 )
dawn@0 12 % we have only one segment - the entire file
dawn@0 13 silentSegments(1,1) = 1;
dawn@0 14 silentSegments(1,2) = floor(length(x)/frameLength);
dawn@0 15 [m n] = size(silentSegments);
dawn@0 16 end
dawn@0 17
dawn@0 18 % check for start at sample 0
dawn@0 19 if( silentSegments(1,1) == 0)
dawn@0 20 silentSegments(1,1) = 1;
dawn@0 21 end
dawn@0 22
dawn@0 23 for i=1:m
dawn@0 24 start = silentSegments(i,1);
dawn@0 25 stop = silentSegments(i,2);
dawn@0 26 if( stop > noOfFrames )
dawn@0 27 stop = noOfFrames;
dawn@0 28 silentSegments(i,2) = noOfFrames;
dawn@0 29 end
dawn@0 30
dawn@0 31 if( start == 0 )
dawn@0 32 start = 1;
dawn@0 33 end
dawn@0 34
dawn@0 35
dawn@0 36 silentFrames( start : stop ) = 1;
dawn@0 37 end
dawn@0 38
dawn@0 39 end
dawn@0 40