function [ta,Pitch,NbHarm,Gain, k,amp, phase, ceps] = lect_hnma(FileName) % % function lect_hnma(FileName) % % FileName : The file name of the analysis HNM without the % default extensions % % USAGE : [ta,Pitch,NbHarm,Gain, k,amp, phase, ceps] = lect_hnma(FileName) % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % modif Mon Sep 4 15:59:45 CEST 2000 % Jan Cernocky % % Defaults values % MAXHARM = 200; % the maximum number of harmonics EXT_RES = '_hnma.res'; EXT_DSC = '_hnma.dsc'; fpres = fopen([FileName EXT_RES], 'rb'); par = fread(fpres, 'float'); % jan: was double % jan: nice to close the file ... fclose (fpres); fpdsc = fopen([FileName EXT_DSC], 'rt'); Size = fscanf(fpdsc, '%d %ld %d\n'); % jan: the same... fclose (fpdsc); NumFr = Size(2); CepsSize = Size(3); SizeLPC = Size(5)+1; disp ([' NumFr ' num2str(NumFr) ' CepsSize ' num2str(CepsSize) ... ' SizeLPC ' num2str(SizeLPC)]); %size (par) ta = zeros(1, NumFr); Pitch = zeros(1, NumFr); NbHarm = zeros(1, NumFr); Gain = zeros(1, NumFr); k = zeros(NumFr, SizeLPC); amp = zeros(NumFr, MAXHARM); phase = zeros(NumFr, MAXHARM); ceps = zeros(NumFr, CepsSize); Step = 1; for i=1:NumFr ta(i)= par(Step); Step= Step+1; Pitch(i) = par(Step); Step= Step+1; NbHarm(i) = par(Step)+1; % +1 for the zero frequency Step= Step+1; Gain(i) = par(Step); Step= Step+1; k(i,:) = par(Step:Step+SizeLPC-1)'; Step= Step+SizeLPC; amp(i,1:NbHarm(i)) = par(Step:Step+NbHarm(i)-1)'; Step= Step+NbHarm(i); phase(i,1:NbHarm(i)) = par(Step:Step+NbHarm(i)-1)'; Step= Step+NbHarm(i); ceps(i,:) = par(Step:Step+CepsSize-1)'; Step= Step+CepsSize; % [i Step] % pause end