网站大量收购独家精品文档,联系QQ:2885784924

MIDI tick与相对时间的换算(国外英语资料).doc

MIDI tick与相对时间的换算(国外英语资料).doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MIDI tick与相对时间的换算(国外英语资料)

MIDI tick与绝对时间的换算(国外英语资料) ============ 4D 54 68 64 / / MThd,MIDI头块 00 00 00 06 / / mthd头块大小,6字节 ------------ 00 / 00 / 0(MIDI零)型文件,所有音符在一个轨道中 00 / 01 / 0轨道数,型文件只有一个轨道 01 E0 /所谓的tpqn,每个四分音符中有0x1e0(480)个MIDI蜱, ------------ 4D 54 72 6B / MTrk,MIDI音轨开始 00 00 12 17 / /此音轨长度为0x1217(4631)字节 ....../ /省略一些事件 00 /δ时 FF /元事件标志 51 / 03 /四分音符的时长(单位为微秒) 07 / 27 0e四分音符的时长= 0x07270e(468750)微秒 ------------ ...... 以上是一个MIDI文件中的一段数据结构,以下是我的笔记,欢迎大家批评指正~ 也就是说,绝对时间是通过元事件中的FF 51 03 XX XX XX来定义的。这个元事件表明了一个四分音符的绝对时间长度。而一个四分音符包含多少个滴答,又是由mthd块中来定义的所需要的时间有多长所以这样就能换算出一个蜱。 人通常是按照曲子的拍速来度量的。拍速就是指曲子的一分钟有多少拍。通常(有不是通常的时候)一拍就是一个四分音符(四分音符)。所以(仅在)通常情况下,一拍= =一个四分音符的长度= = 480个MIDI蜱。 所以,根据元事件事件的FF 51 03 XX XX XX,可以得到一个四分音符的绝对时间长度。如果用一分钟(60秒,秒)来除这个值,就得到了曲子的拍速节奏。比如上面例子,得到的四分音符时间为468750微秒,所以它的拍速就是: 速度=468750 = 128 BPM。 而通过mthd块中对每个四分音符中包含MIDI数的定义(就是所谓的tpqn蜱蜱,每季度注),将这个四分音符的绝对时间长度,除以tpqn,就得到了每个MIDI蜱的绝对时间所以示例中的每个蜱的绝对时间就是MIDI: 468750/480 = 976.5625美国= 976562.5纳秒。 得到每个MIDI蜱的绝对时间之后,就可以根据单片机如主频等的相关参数,转化为单片机定时器的分频系数,从而使用单片机的定时器来产生精确的MIDI蜱。 至于非通常的情况,有可能一个四分音符是两拍(比如说八六拍的拍号6 / 8,7 / 8或者是八七拍,此时八分音符是一拍),也有可能是半拍(比如说二二拍的拍号2 / 2,此时二分音符是一拍)。这些虽然也有,但用的最多的还是四分音符为一拍的,就是常说的四二拍2 / 4,3 / 4四三拍,四四拍4 / 4,5 / 4还有比较少见的四五拍。 不过无论拍号怎么变,一个四分音符的绝对时间长度,和一个四分音符的MIDI蜱数都是不会变的,所以对于MIDI本身来讲,人所感受到的节拍,还有这些拍号,都无所谓,只是一拍多一倍或者少一半蜱而已MIDI MIDI够不够就好了本身只需要数蜱。

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档