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

📄 note2mid2.html

📁 自动语音识别源码对非特定人的孤立词语音识别算法 进行研究。考虑到语音识别技术在嵌入式系统处理能力较弱、存储空间有限的问 题上进行算法的选择和优化
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"                "http://www.w3.org/TR/REC-html40/loose.dtd"><html><head>  <title>Description of note2mid2</title>  <meta name="keywords" content="note2mid2">  <meta name="description" content="MIDI2MID2 Midi to mid conversion, version 2.">  <meta http-equiv="Content-Type" content="text/html; charset=big5">  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">  <meta name="robots" content="index, follow">  <link type="text/css" rel="stylesheet" href="../m2html.css"></head><body><a name="_top"></a><div><a href="../index.html">Home</a> &gt;  <a href="index.html">melodyRecognition</a> &gt; note2mid2.m</div><!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td><td align="right"><a href="index.html">Index for melodyRecognition&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>--><h1>note2mid2</h1><h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>MIDI2MID2 Midi to mid conversion, version 2.</strong></div><h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>function yi = midi2mid2(midi, duration, pointNum, plotOpt) </strong></div><h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre class="comment">MIDI2MID2 Midi to mid conversion, version 2.
    Usage:
    yi = midi2mid2(midi, duration, pointNum, plotOpt)

    Type midi2mid2 for a self demo.</pre></div><!-- crossreference --><h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>This function calls:<ul style="list-style-image:url(../matlabicon.gif)"></ul>This function is called by:<ul style="list-style-image:url(../matlabicon.gif)"></ul><!-- crossreference --><h2><a name="_subfunctions"></a>SUBFUNCTIONS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><ul style="list-style-image:url(../matlabicon.gif)"><li><a href="#_sub1" class="code">function selfdemo</a></li></ul><h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function yi = midi2mid2(midi, duration, pointNum, plotOpt)</a>0002 <span class="comment">%MIDI2MID2 Midi to mid conversion, version 2.</span>0003 <span class="comment">%    Usage:</span>0004 <span class="comment">%    yi = midi2mid2(midi, duration, pointNum, plotOpt)</span>0005 <span class="comment">%</span>0006 <span class="comment">%    Type midi2mid2 for a self demo.</span>0007 0008 <span class="comment">%    Roger Jang, 20010111</span>0009 0010 <span class="keyword">if</span> nargin==0, <a href="#_sub1" class="code" title="subfunction selfdemo">selfdemo</a>; <span class="keyword">return</span>; <span class="keyword">end</span>0011 <span class="keyword">if</span> nargin&lt;4, plotOpt=1; <span class="keyword">end</span>0012 <span class="keyword">if</span> nargin&lt;3, pointNum=128; <span class="keyword">end</span>0013 <span class="keyword">if</span> nargin&lt;2, duration=8; <span class="keyword">end</span>0014 0015 midi = double(midi);0016 0017 smtn = midi(1:2:end);0018 time = midi(2:2:end);0019 0020 time = time(:)';0021 endTime = cumsum(time)*1/64;0022 beginTime = [0, endTime(1:end-1)+1e-6];0023 timeSeq = [beginTime; endTime];0024 timeSeq = timeSeq(:);0025 0026 smtnSeq = [smtn(:)'; smtn(:)'];0027 smtnSeq = smtnSeq(:);0028 0029 smtnSeq(smtnSeq==0)=nan;0030 0031 <span class="comment">% ====== Return mid format of pointNum points</span>0032 xi = linspace(0, duration, pointNum);0033 yi = interp1(timeSeq, smtnSeq, xi);0034 0035 <span class="comment">% ====== If rest, use the previous pitch</span>0036 <span class="keyword">for</span> i=2:length(yi),0037     <span class="keyword">if</span> isnan(yi(i)), yi(i) = yi(i-1); <span class="keyword">end</span>0038     <span class="keyword">if</span> yi(i)==0,     yi(i) = yi(i-1); <span class="keyword">end</span>0039 <span class="keyword">end</span>0040 0041 <span class="keyword">if</span> plotOpt,0042     figure;0043     plotmidi(midi);0044     hold on0045     plot(xi, yi, <span class="string">'g.'</span>);0046     hold off0047 <span class="keyword">end</span>0048 0049 <a name="_sub1" href="#_subfunctions" class="code">function selfdemo</a>0050 <span class="comment">% ?????u?????v???e???y</span>0051 midi = [55 23 55 23 55 23 55 23 57 23 55 35 0 9 57 23 60 69 0 18 64 69 0 18 62 23 62 23 62 23 62 12 60 12 64 23 60 35 0 9 57 12 55 12 55 127];0052 mid = feval(mfilename, midi, 8, 128, 1);0053 title([<span class="string">'Green dots is the output '</span>, mfilename]);</pre></div><hr><address>Generated on Thu 30-Oct-2008 12:52:18 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address></body></html>

⌨️ 快捷键说明

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