最近在试着解析midi文件,一直以为一个音轨用一个通道。
打架乐器用的是通道10,但是有些mid文件音轨都没有10个,有些mid文件多个音轨都是用的通道10。查资料也没找到,是哪个数据来表示某个音轨是对应哪个通道的。
3 回答
给楼主解释一下,为啥会有多个Track共用Channel10的这个事情。Channel10是打击乐通道,这个清楚吧?那打击乐音色是每个音符就代表了一种打击乐的声音,所以你看Channel10的音符是最多的,也是最混乱的。于是做MIDI的时候,通常会用一个Track只写鼓,包括底鼓、小军鼓、嗵鼓等等;再用一个Track只写镲,如开镲闭镲吊镲等;再用一个Track只写小打,比如Conga鼓、三角铁、沙锤等等。打击乐为了保证节奏稳定,通常都会严格量化,所以有些音符会同时发声,比如底鼓、闭镲、三角铁等会同时打一下。假如这三个音符都在同一个Track里时,给每个音符单独调力度,或者是单独给镲或者小打单独调力度的时候,就容易乱。所以就把这几类打击乐器给分Track,这样每次就编辑某个Track的内容,不会影响别的Track。
通道是写在每个MIDI信息里的。你看每个MIDI信息的状态字,比如Note On是0x8p,p的值可以是从0到F,就是十进制的0到15,这个就是通道号。
而音轨不是MIDI协议或者MIDI文件里规定的东西。MIDI事件只看通道,MIDI文件只看MTrk Chunk。因为MIDI事件和MIDI文件都没有规定Track是什么,所以DAW里的Track与通道或者是Chunk都是有相互对应的可能。
举例子,很多DAW都可以把MIDI文件按通道分割成多个Track,或者是在打开MIDI 0格式的文件时也可以把MIDI事件按通道分割成多个Track,这也许就是通道和Track一一对应;但本站很多人玩MIDI时碰到过,有些DAW功能不够完善,在碰到一个Track里的MIDI事件有多个通道号的时候,就不知道怎么处理了,所以Track似乎又是和通道一一对应的。
音轨(Track)可自由设置几轨 不一定要设到十轨以上才能设鼓组
每个音轨里(Track)可选择频道(channel)
每一个midi channel在同一时间只能够指定它使用一种乐器来演奏
而在General MIDI,简称GM,是MIDI的统一规格 他的第10频道(channel)也是鼓组
其余(channel)1-9 11-16可自由指定使用喜欢的乐器
例如 我要制作3样乐器编制的音乐 我可设3个音轨(Track)
第一轨里 选择频道 channel 1 Piano
第二轨里 选择频道 channel 2 Bass
第三轨里 选择频道 channel10 鼓组
这样就可制作 有钢琴 低音吉他 鼓 三样乐器的编制音乐
不知是否有帮助到您
您的回答
登录以回答这儿是 MidiShow 问答区,欢迎您请教或帮大家解决关于音乐创作、MIDI 应用、MIDI 技术等音乐相关的问题。
问答区积分规则如下:
- 提问、回答或自问自答积分均不变
- 问题被赞成 : +10
- 问题被反对 : 提问者 -2,点击反对者不扣分
- 回答被赞成 : +10
- 回答被反对 : 回答者 -2,点击反对者 -1
- 提问者选出满意回答 :回答者 +15 ,提问者 +2
参与问答前请阅读:问答区玩法规则