⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pv2midifile.m

📁 自动语音识别源码对非特定人的孤立词语音识别算法 进行研究。考虑到语音识别技术在嵌入式系统处理能力较弱、存储空间有限的问 题上进行算法的选择和优化
💻 M
字号:
function pv2midiFile(pitchVec, pitchRate, midiFile)
% pv2midiFile: Pitch vector to midi file conversion
%	Usage: pv2midiFile(pitchVec, pitchRate, midiFile)
%		pitchVec: pitch vector
%		pitchRate: number of pitch points per second (which is equal to fs/(frameSize-overlap))
%		midiFile: output midi file
    
noteVec = pv2note(pitchVec);	% Note segmentation. The format of noteVec is [pitch, duration, pitch, duration...]
if noteVec(1)==0
	noteVec = noteVec(3:end);	% Get rid of leading rest
end
if noteVec(end-1) == 0
	noteVec = noteVec(1:end-2);	% Get rid of trailing rest
end
    
for i=1:2:length(noteVec)
	k=(i+1)/2;				% Note index
	pVector(k)=noteVec(i);			% pitch
	durVector(k)=noteVec(i+1)*pitchRate;	% duration
	if k==1
		onVector(k)=0;			% onset begin at 0
	else
		onVector(k)=onVector(k-1)+durVector(k-1);
	end
end

%pVector=noteVec(1:2:end);
%durVector=noteVec(2:2:end);
%onVector=[0, cumsum(durVector)];
    
beatUnit = 2*mean(durVector);	% 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -