Voice Audio Data and Pitch Extraction
    4 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
I want to extract numerical data from raw voice audio files(.wav)- take out the numeric pitch (Hz) and do specturm analysis in a voice audio file. However, I want to have the pitch throughout the audio file with time stamps to a later to be converted to a .csv or .txt, and for other analysis like spectrum and stats. 
How do I do that? I am looking for succesful code. I am new to Matlab, but I have the audio packages already installed. So far I seen parts of what I want to do on the internet, but they never work. As for now the data is not noisy, but I might need to clean some with extra sound in the background.
Thanks for your help in advance.
0 commentaires
Réponse acceptée
  jibrahim
    
 le 20 Oct 2022
        [x,fs] = audioread("SingingAMajor-16-mono-18secs.ogg");
winLength = round(0.05*fs);
overlapLength = round(0.045*fs);
[f0,idx] = pitch(x,fs,Method="SRH",WindowLength=winLength,OverlapLength=overlapLength);
tf0 = idx/fs;
3 commentaires
  Walter Roberson
      
      
 le 2 Nov 2022
				The internal code uses
hopLength = params.WindowLength - params.OverlapLength;
numHops = floor((size(x,1)-params.WindowLength)/hopLength);
varargout{2} = cast(((0:numHops)*hopLength + params.WindowLength)','like',x);
So it is more or less creating windows, and you are getting an index for each window.
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Audio Processing Algorithm Design dans Help Center et File Exchange
			
	Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!