百度百科的midi文件格式写的非常详细,点个赞。这里备份一下,方便日后查看。

  midi文件由midi头和音轨组成,midi头中的信息包括midi头标志,音轨数量,音轨的演奏方式(并行/拼接等),4分音符的tick长度。

  音轨由音轨头和音轨数据组成,音轨头有音轨头标志,还有记录音轨长度(字节数)。音轨数据是是一个个事件组成,每个事件有两部分,距离前一个事件的时长和事件,midi 1.0的标准里用了一种编码方式来编码时长和事件。

  重点说说事件,事件分为两类,一类就是midi设备上的按钮,比如有按下、松开、效果等等。另一类是标志信息,比如拍子、速度、乐器、一些音乐的表达方式等等。

midi文件格式的更多相关文章

  1. [转]MIDI常识20条

    原文链接:http://www.midifan.com/modulearticle-detailview-488.htm Keyboard杂志老资格编辑Jim Aikin在纪念MIDI诞生20的时候发 ...

  2. CVE-2012-0003:Microsoft Windows Media Player winmm.dll MIDI 文件堆溢出漏洞调试分析

    0x01 蜘蛛漏洞攻击包 前言:2012 年 2月,地下黑产中流行着一款国产名为蜘蛛漏洞的攻击包 -- "Zhi-Zhu Exploit Pack",该工具包含 5 个漏洞,都是在 ...

  3. 转:Java.file

    类 java.io.File 的使用 使用 File 的软件包 java.awt 包含用于创建用户界面和绘制图形图像的所有类. java.io 通过数据流.序列化和文件系统提供系统输入和输出. jav ...

  4. RIFF和WAVE音频文件格式

    RIFF file format RIFF全称为资源互换文件格式(Resources Interchange File Format),是Windows下大部分多媒体文件遵循的一种文件结构.RIFF文 ...

  5. (转)AVI文件格式解析+AVI文件解析工具

    AVI文件解析工具下载地址:http://download.csdn.net/detail/zjq634359531/7556659 AVI(Audio Video Interleaved的缩写)是一 ...

  6. avi文件格式详解【转】

    AVI是音频视频交错(Audio Video Interleaved)的英文缩写,它是Microsoft公司开发的一种符合RIFF文件规范的数字音频与视频文件格式,原先用于Microsoft Vide ...

  7. php文件格式数组

    一个文件格式对应的数组$mime_types = array('gif' => 'image/gif','jpg' => 'image/jpeg','jpeg' => 'image/ ...

  8. HTML5 Audio时代的MIDI音乐文件播放

    大家都知道,HTML5 Audio标签能够支持wav, webm, mp3, ogg, acc等格式,但是有个很重要的音乐文件格式midi(扩展名mid)却在各大浏览器中都没有内置的支持,因为mid文 ...

  9. .NET 文件格式相关开源项目

    在过去的2年里,我已确定把文件格式作为我的主要研究课题之一,NPOI就是在这样的研究课题下的产物.尽管从严格意义上讲NPOI只是POI的.NET版本,并不是我创造的,但是在开发过程中,我对OLE2有了 ...

随机推荐

  1. python3学习笔记九(if语句)

    # !/usr/bin/python3 斐波那数列,两个元素的总和确定下一个数a,b = 0,1while b < 1000: print(b,end=',') a, b = b, a+bpri ...

  2. SpringCloud启动类指定扫描包路径

    //如果这个启动类所在的包路径隐藏的很深,则需要指定扫描包.否则默认扫描启动类所在的子包路径下 @SpringBootApplication(scanBasePackages="com.jo ...

  3. Linux基础上

    文件操作                                                                                                 ...

  4. 搭建vsftpd服务

    配置文件 anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESxferlog_ ...

  5. Java笔记Spring(九)

    完整调试springmvc源码 WebApplicationContext = new XmlWebApplicationContext();// XmlWebApplicationContext通过 ...

  6. 1.Java

    面向对象:封装,继承,多态 A组合B:那么B就可以调用A中的方法 A关联B:A中的成员变量是用B声明的 A和B的依赖关系:A中某个方法的参数是B声明的对象或者返回值类型是B的数据类型 Static方法 ...

  7. POJ2159 Ancient Cipher

    POJ2159 Ancient Cipher Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 38430   Accepted ...

  8. spring boot 整合 云之讯 demo

    ---恢复内容开始--- package com.zhourong.controller; import org.apache.commons.lang3.RandomStringUtils; imp ...

  9. python使用xlrd, xlwt读取excel文件和 写入excel文件

    python 3.6 首先在cmd下执行安装指令 xlre和xlwt : pip  install  xlre    pip install  xlwt #-*- coding: utf8 -*-im ...

  10. MYSQL1

    一:对查询就行优化 避免全表查询 1.首先考虑在where及order by 列上建立索引 2.where子句   LIKE  '%abc%' 前置%   引擎放弃使用索引而进行全表扫描 3.wher ...