WebMidiLink
WebMidiLink
1.Introduction
English | Japanese
What is the WebMidiLink
WebMidiLink is a technology for the sync of multiple web-based synthesizers. Though the HTML5 audio functions allows you to build a web-based synthesizers, they still not have the ability of co-operating each other. WebMidiLink is a very simple protocol of the MIDI message transfer. Web-based host apps can use web-based synthesizers as if they are the plug-in synthesizers by this protocol.
This page is a sample of the WebMidiLink. Load web-based synthesizers by pressing the 'Load' buttons for each Instrument, and can play MMLs.
Chrome is recommended to run demo.
WebSequencer, the Pianoroll sequencer is now in development.
WebMidiLink Specification
WebMidiLink Specification
技術的な説明
MML Play MML Stop
Instrument-1
| URL : | Load | |
| g200kg:WebModular aike:WebSynth mohayonao:Timbre.js |
||
| MML : |
Instrument-2
| URL : | Load | |
| g200kg:WebModular aike:WebSynth mohayonao:Timbre.js |
||
| MML : |
Instrument-3
| URL : | Load | |
| g200kg:WebModular aike:WebSynth mohayonao:Timbre.js |
||
| MML : |
MML format
| Char | Description |
|---|---|
| Tnn | Tempo setting |
| A,B,C,D,E,F,G | Note name. following number is duration.If the duration is 0, the note is polyphonic. |
| +,#,- | sharp/flat |
| R | rest |
| Vnn | channel volume (nn=0-15) "midi,bx,7,(nn)*8" |
| @nn | prog change (nn=0-127) "midi,cx,nn" |
| CHnn | midi channel (nn=1-16) |
| Lnn | default note duration |
| . | Dotted note |
| Onn | Octave |
| <,> | Octave shift |
| & | tie |
WebMidiLink Supported WebApps
WebMidiLink supported Synths
| Author | Name | Description | URL |
|---|---|---|---|
| g200kg | WebModular | Modular synthesizer | http://www.g200kg.com/webmidilink/webmodular/ |
| aike | WebSynth | Mini Moog like synthesizer | http://aikelab.net/websynth/ |
| mohayonao | Timbre.js | Scripting synthesizer | http://script-synthesizer.herokuapp.com/ |
| aike | Beatonica | Rhythm Toy linking to Twitter | http://beatonica.com/ |
| g200kg | WebBeeper | Polyphonic beep test | http://www.g200kg.com/webmidilink/webbeeper/ |
| GameSmith | Webitaur | bass synthesizer | http://www.angryoctopus.co.nz/synth16/ |
| aike | BitMaker | Virtual 8bit Synthesizer | http://aikelab.net/bitmaker/ |
| g200kg | GMPlayer | GM mapped Multi-timbre Synth | http://www.g200kg.com/webmidilink/gmplayer/ |
| Takashi Mizuhiki | WebFMsynthesizer | Web FM synthesizer made with HTML5 | http://www.taktech.org/takm/WebFMSynth/ |
| g200kg | MidiDevDrive | Local Midi device driver for WebMidiLink | http://www.g200kg.com/webmidilink/mididevdrive/ |
| Yuuta Imaya | sf2synth.js | SoundFont Player/td> | http://imaya.github.io/demo/sf2.js/wml.html |
WebMidiLink Host App
| Author | URL | Description |
|---|---|---|
| mohayonao | https://dl.dropbox.com/u/645229/webmodular-and-timbre/index.html | timbre.js Rhythm track + WebMidiLink Synth |
| tekisuke | http://sketch.txt-nifty.com/blog/chrosspad/chrosspad.html | ChrossPad for chrome |
WebMidiLink的更多相关文章
随机推荐
- uva 10934(dp)
题意:k个水球,现在在一个n层建筑物上,水球可能在某一层层以上扔下去会破掉,现在求一个最少的次数使得用这k个水球能确定出哪一层. 思路:假设有i个小球,还可以实验j次时,第一个小球从x处扔下去,如果破 ...
- touch的属性
touch命令:建立文件 touch的功能并不是用来创建新文件的,创建文件是touch命令的一个特殊情况,touch是用来修改指定的文件的访问和修改时间属性,如果指定的文件不存在,将建立一个新的空 ...
- merge,join,concat
merge交集 join并集 concat axis=0 竖着连 axis=1 横着连
- TEA(Tiny Encryption Algorithm)
简介 TEA是一种简单高效的加解密算法,以速度快,实现简单著称.TEA算法每一次可以操作64-bit数据,采用128-bit作为key,算法采用迭代的形式,推荐的迭代轮数是64,最少32. 代码(默认 ...
- TFS Workspace 更改电脑名称
不小心改了计算机名称 导致VS在保存项目的时候,包如下错误: 解决方法: 第一步: 第二步:输入如下片段 tf workspaces /updateComputerName:旧计算机名称 /coll ...
- java异常处理的设计
有一句这样话:一个衡量Java设计师水平和开发团队纪律性的好方法就是读读他们应用程序里的异常处理代码. 本文主要讨论开发Java程序时,如何设计异常处理的代码,如何时抛异常,捕获到了怎么处理,而不是讲 ...
- javascript 手势缩放 旋转 拖动支持:hammer.js
原文: https://cdn.rawgit.com/hammerjs/hammer.js/master/tests/manual/visual.html /*! Hammer.JS - v2.0.4 ...
- 修改Oracle监听端口
修改oracle监听端口 修改端口号的整体步骤:1.1 查看当前监听的状态1.2 停止监听1.3 修改监听文件的端口号1.4 修改初始化参数local_listener1.5 重启 ...
- Nginx中的进程亲和性 affinity
Nginx采用多进程Master/Worker结构,Worker进程数为CPU个数时工作效率最高,Nginx通过affinity为每个Worker进程绑定一个CPU,避免进程切换带来的消耗,同时能够保 ...
- 多线程的学习与python实现
学习了进程与线程,现对自己的学习进行记录. 目录: 一.进程与线程的概念,以及联系与区别 二.多线程 三.python中多线程的应用 四.python实例 五.参考文献 一.进程与线程的概念.以及联系 ...