g200kg > WebMidiLink > 1.Introduction

WebMidiLink

2012/06/26

1.Introduction

« Prev 1.Introduction 2.Specification 3.SynthList (JSONP) Next »

 

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
技術的な説明


Instrument-1 Instrument-2 Instrument-3

MML Play MML Stop


Instrument-1

URL : Load
  
g200kg:WebModular

aike:WebSynth

mohayonao:Timbre.js
aike:Beatonica
g200kg:WebBeeper
GameSmith:Webitaur
aike:BitMaker
g200kg:WebBridge
g200kg:GMPlayer
Takashi Mizuhiki:WebFMsynthesizer
g200kg:MidiDevDrive
Yuuta Imaya:sf2synth.js
g200kg:RenoidPlayer
Logue:MSXSprit.dls
Logue:Yamaha XG Sound Set.sf2
dtinth:synth.spacet.me
Logue:Wml2WebMidiApi

MML :  

Instrument-2

URL : Load
  
g200kg:WebModular

aike:WebSynth

mohayonao:Timbre.js
aike:Beatonica
g200kg:WebBeeper
GameSmith:Webitaur
aike:BitMaker
g200kg:WebBridge
g200kg:GMPlayer
Takashi Mizuhiki:WebFMsynthesizer
g200kg:MidiDevDrive
Yuuta Imaya:sf2synth.js
g200kg:RenoidPlayer
Logue:MSXSprit.dls
Logue:Yamaha XG Sound Set.sf2
dtinth:synth.spacet.me
Logue:Wml2WebMidiApi

MML :  

Instrument-3

URL : Load
  
g200kg:WebModular

aike:WebSynth

mohayonao:Timbre.js
aike:Beatonica
g200kg:WebBeeper
GameSmith:Webitaur
aike:BitMaker
g200kg:WebBridge
g200kg:GMPlayer
Takashi Mizuhiki:WebFMsynthesizer
g200kg:MidiDevDrive
Yuuta Imaya:sf2synth.js
g200kg:RenoidPlayer
Logue:MSXSprit.dls
Logue:Yamaha XG Sound Set.sf2
dtinth:synth.spacet.me
Logue:Wml2WebMidiApi

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

« Prev 1.Introduction 2.Specification 3.SynthList (JSONP) Next »

WebMidiLink的更多相关文章

随机推荐

  1. @Transactional 事务管理

    全面分析 Spring 的编程式事务管理及声明式事务管理 事务传播行为 所谓事务的传播行为是指,如果在开始当前事务之前,一个事务上下文已经存在,此时有若干选项可以指定一个事务性方法的执行行为.在Tra ...

  2. guava学习--FutureFallback

    FutureFallback提供一个Future的备用来替代之前失败的Future,常被用来作为Future的备份或者默认的值. @Testpublic void testFuturesFallbac ...

  3. Javascript模块化规范

    Javascript模块化规范 一.前端js模块化由来与演变 CommonJS 原来叫 ServerJS,推出 Modules/1.0 规范后,在 Node.js 等环境下取得了很不错的实践.09年下 ...

  4. 使用nodejs调用微信发送红包

    前置条件:申请微信发送红包的账户及其权限 依赖 blueimg-md5和 xmlreader 库 /common/weixin.js 源码 /** * Created by chent696 on 2 ...

  5. gbk与utf-8转换

    linux: #include <iconv.h> int code_convert(char *from_charset,char *to_charset,char *inbuf,int ...

  6. SQL Server数据库性能优化之SQL语句篇【转】

    SQL Server数据库性能优化之SQL语句篇http://www.blogjava.net/allen-zhe/archive/2010/07/23/326927.html 近期项目需要, 做了一 ...

  7. uva 489 Hangman Judge

    大意:电脑想个单词,玩家来猜.玩家输入一个个字母,若答案里有这个字母,则显示该单词中所有该字母.最终目标是显示答案所有字母.猜错7次,死: 注意特殊条件:1.玩家不断重复错误的字母,只算一次猜错.2. ...

  8. spout详解

    spout放在每个executer执行,我们先从spoutExecutors的初始化开始往下看,spoutExecutors是在一个worker中管理其中的tasks,在SpoutExecutors的 ...

  9. HDU 1405

    题意: 输入一个数n,输出它的素因子与这个素因子出现的次数. 分析: 用欧拉函数,变下形就好了,不再过多解释. 代码如下: #include <iostream> #include < ...

  10. iOS程序启动过程

    First, the function creates the main application object (step 3 in the flowchart). If you specify ni ...