usbmidi
* USB-MIDI driver for Linux
DOWNLOAD
usbmidi とは
USB-MIDI デバイスの簡単なドライバです。Linux 用。
現状
- Linux-2.2.18 と Linux-2.4.0、およびそれ以降で動作する、かもしれません
- 幾つかの USB-MIDI デバイスしかサポートしていません。対応機種は下に
- /dev/midi?? から MIDI-OUT へのデータ入力 / 出力が行えます
- VendorID と ProductID を直接指定できますので、運が良ければ上記のデバイス以外でも使える可能性があります
- OSS ドライバです。ALSA については、こちらを御参照下さい。
- 最新の 2.4.x、2.5.x カーネルツリーには本コードの stable 版が含まれています。
時期によっては、カーネル側のコードが先行している場合もあります。
対応機種
- MIDI Device class をサポートする USB-MIDI 機器
- RolandED
- SC-8850
UA-100(G)
UM-1 / 1S
UM-2 / 1E
PC-300
(他の USB-MIDI デバイスも id を直接指定することで動く、かもしれません)
- YAMAHA
- 各種
- MidiMan
- MidiSport 1x1
MidiSport 2x2
USB-Uno
MidiSport 4x4 (制限あり)
- Steinberg
- USB-2-MIDI
- MOTU
- Fastlane
変更履歴
- 20030126
-
MOTU Fastlane に対応。
(Thanks to Woodley Packard <sweaglesw@thibs.menloschool.org>)
- 20030112
-
最新の usb-linux stack に追従。
排他制御周りのコードを修正
(Thanks to Oliver Neukum <oliver@neukum.name>)
構造体の初期化コードを C99 仕様に合わせた
(Thanks to Art Haas <ahaas@airmail.net>)
デバッグ用出力をおとなしくした
- 20020929
-
rmmod 時に落ちるバグを暫定修正
(Thanks to Pedro Lopez-Cabanillas <plcl@inicia.es>)
- 20020923
-
一部環境でエクスクルーシブメッセージが正しく送られていなかったバグを修正
Makefile を修正
(以上 Thanks to Pedro Lopez-Cabanillas <plcl@inicia.es>)
MU-1000 用のエンドポイントパラメータを微調整
(Thanks to 某スレ >>62 さん)
- 20020324
-
HotPlug 用のエントリを追加
入出力を同時に行った際の不具合を修正 (以上 Thanks to Lars Doelle <lars.doelle@on-line.de>)。
Makefile を更新 (Thanks to Pedro Lopez-Cabanillas <plcl@inicia.es>)
- 20020122
-
Roland PC-300 のエントリを追加(Thanks to Roger E Critchlow Jr <rec@elf.org>)。
Hotplugging.txt を追加(Thanks to Lars Doelle <lars.doelle@on-line.de>)。
- 20011212
-
MidiSport1x1 / 2x2 に対応するファームウェアをアーカイブ内に同梱。
(Thanks to Lars Doelle <lars.doelle@on-line.de>)
Linux-2.4.14 以降でコンパイルが通らなかった間抜けなバグを修正。
- 20011202
-
YAMAHA specific device descriptor に対応。
但し UX-16 でしかテストしていない。
- 20010915
-
indent および関数名を Linux's coding style に合わせた。
本質的な中身は変わってない。
- 20010720
-
Makefile.RedHad の修正
その他微調整
(以上 Thanks to Richard Penner <richardpenner@home.com>)
- 20010707
-
SC-8850、UA-100(G) 用エントリを修正。それぞれ全てのポートが使えるようになった。
Makefile のミスを修正。
(以上 Thanks to Richard Penner <richardpennerhome.com>, Michael Minn <michaelmichaelminn.com>)
配付条件
GPL2
Need for help
USB-MIDI と名乗って居ながら、実は単なる Vendor specific device であると云うモノが、
結構多いようです。USB-MIDI 自体は規格化されていて、ソレに従っていればドライバは単一のもので良い筈なんですが。
しかし、そういうデバイスでも上記の規格書の中にある USB-MIDI event packet というモノを受け取れる
(あるいは送り出す) endpoint は持っているらしく、
そこに USB-MIDI の規格通りにデータを送ってやると、MIDI 入出力自体はきちんと行えるようになってはいるようです。
というわけで、このドライバでも VendorID やら何やらの各種パラメータを手動で設定出来るようにしてあります。
USB-MIDI と名が付くデバイスであれば、ひょっとしたら使えたりするかもしれません。
もしお手持ちの USB-MIDI なデバイスをこのドライバで使用することが出来ましたら、
その際の情報を御連絡頂けると幸いです。
リンク
おまけ
Jun.20.2004 (Nagano)
REX-CFU1 経由で Linux Zaurus (SL-C760) でも動かすことが出来ました。動作確認は YAMAHA の UX10 で行いましたが、他のデバイスでも問題ないと思います。
なお、大抵の場合直結では電力が足りませんので、ハブ経由になると思われます。
ドライバが重いのかタイマの解像度が無いのか、sayleen での演奏はかなりモタつきますが…
(Linux Zaurus + REX-CFU1 に関しては、humorum さんの頁を御参照下さい)
Jun.26.2004 01:40 (Nagano)
モタつく原因は、どうも midi-in 周りにあるようです。midi-in endpoint が存在する場合、sl811 に大量の割り込みが発生してしまうようで。
とりあえず in endpoint 検索を止めてしまうと、midi-in は使えなくなりますが、それなりにきちんと再生できるようにはなります。
|