Effacer les filtres
Effacer les filtres

I have got a duration of speech signal of 3.2 sec how can i split this into 3 equal parts??

2 vues (au cours des 30 derniers jours)
I have got a duration of speech signal of 3.2 sec how can i split this into 3 equal parts?? can any1 help me with matlab code plss!!!

Réponse acceptée

Walter Roberson
Walter Roberson le 29 Avr 2013
firstthird = floor(length(YourSignal)/3);
secondthird = firstthird + floor((length(YourSignal) - firstthird)/2);
part1 = YourSignal(1:firstthird,:);
part2 = YourSignal(firstthird+1:secondthird,:);
part3 = YourSignal(secondthird+1:end, :);
Note that it is possible that the signal is not exactly divisible into 3 pieces. For example, if it were 17 samples then you cannot get 5 2/3 samples per part, and instead need to break it up into 5/5/7 or 5/6/6 or any permutation of those possibilities. The above code would choose 5/6/6 in that case.
  3 commentaires
Sony
Sony le 30 Avr 2013
Modifié(e) : Sony le 30 Avr 2013
but sir when i used this code i got some words split up ,for eg if the sentence is "all that glitters is not gold "the 1st part that i got is "all that glit" 2nd part "ters is" 3rd part "not gold" so in short the wword are splitted into 1st nd 2nd part,can u help me with some other method so that the word does not get splitted up
Walter Roberson
Walter Roberson le 30 Avr 2013
Your question was about "equal parts", and equal parts can easily end up with split sounds.
You may want to search the forum for "detect silence".

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by