% zápis do souboru fileNameTextGrid % y ... vektor vzorků zvuku, zde používám jen pro výpočet finálního času zvuku % fs ... vzorkovací frekvence, zde používám jen pro výpočet finálního času zvuku % pozn. 1. vzorek odpovídá času 0, tudíž poslední (ypsilontý) vzorek odpovídá času (length(y)-1) / fs % T1 ... vektor počátečních časů každého segmentu % T2 ... vektor konečných časů každého segmentu % lab ... vektor labelů každého segmentu % pozn. například 3. segment začíná T1(3), končí T2(3) a jeho label je lab{3} fid = fopen(fileNameTextGrid, 'w', 'ieee-be', 'UTF-8'); fprintf(fid, 'File type = "ooTextFile"\n'); fprintf(fid, 'Object class = "TextGrid"\n'); fprintf(fid, '\n'); fprintf(fid, '0\n'); fprintf(fid, '%f\n', (length(y)-1)/fs); % finální čas fprintf(fid, '\n'); fprintf(fid, '1\n'); fprintf(fid, '"IntervalTier"\n'); fprintf(fid, '"diphone"\n'); % název vrstvy fprintf(fid, '0\n'); % počáteční čas fprintf(fid, '%f\n', (length(y)-1)/fs); % finální čas fprintf(fid, '%d\n', length(T1)); % počet intervalů textgrid for I = 1: length(T1) fprintf(fid, '%f\n', T1(I)); fprintf(fid, '%f\n', T2(I)); fprintf(fid, '"%s"\n', lab{I}); end fclose(fid);