几年前我对音乐产生了兴趣,想自己做一个钢琴软件。

研究发现windows提供了播放midi的api,而且midi文件是一般播放器都能播放、结构简单、易编辑、体积小的格式。

之后我用C#/WinForm做了个软件。

 

【MIDI彩虹钢琴】是【键盘钢琴(128+61+N种乐器、可录制)】、【midi播放器(可倒播)】、【midi编辑制作(4种方式)】、【自动作曲】于一身的免费软件。

下载地址:https://pan.baidu.com/s/1ElbdIKthrr1kNprFOOWvug

 

运行环境:

需要winXP及以上版本的windows操作系统

如果运行不了,就需要下载并安装.net framework任意版本

 

 1、如果想做一个简单的钢琴软件,可以调用windows目录C:\Windows\System32\winmm.dll的midiOut系列api,即可发出钢琴、吉他、笛子、鸟叫声等一百多种音色,

     做得好的话可以播放编辑.mid后缀的文件。

 2、C:\Windows\System32\drivers\gm.dls是Windows的软波表,由Hubbe64MB.sf2转换而来,可以自己制作或下载其它软波表,重命名为gm.dls,然后直接替换它,达到替换MIDI音色的目的。

      直接安装XG波表,也可以。

      也可以自制简单音色库,需要自己去录制声音文件,再根据软件的说明操作,软件自带钢琴和古筝音色库

 3、.mid后缀的文件,虽然大部分播放器都能播放,但很多解析得不完美,导致听不到主旋律,国外的midi作品比较多是这种情况,

     如果你有一些mid文件,应该是很好听的,但结果很呵呵,那建议你试一下其它更专业的播放器,用我这个软件也行。

 4、我这个软件主要分享给midi爱好者,软件自带使用说明,有问题可以找我,

      如果你想知道软件里面的一些实现,你可以用ILSpy反编译成源码,即可看到逻辑,

     不直接开源是因为源码我还要用,我到不想维护时会开源,近期不要期待。

 

使用方法下期介绍,待续...

 

下面分享一些写得比较好的开源的midi播放器

http://www.codeproject.com/Articles/6228/C-MIDI-Toolkit

http://www.codeproject.com/Articles/36313/MIDI-Star

http://www.codeproject.com/Articles/141617/WPF-Midi-Band

 

下面分享一些比较好的midi网站

http://www.midishow.com/

http://josh.agarrado.net/music/anime/

http://www.gangqinpu.com/

 

下面分享一个比较好的钢琴曲网站

http://www.tantan123.com/