File:  [NetBSD Developer Wiki] / wikisrc / tutorials / how_to_use_midi_devices_with_netbsd.mdwn
Revision 1.2: download - view: text, annotated - select for diffs
Sun Feb 5 07:14:36 2012 UTC (8 years, 8 months ago) by schmonz
Branches: MAIN
CVS tags: HEAD
dos2unix

    1: **Contents**
    2: 
    3: [[!toc levels=2]]
    4: 
    5: #  Supported hardware 
    6: 
    7: ##  Creative Music System 
    8: 
    9: Very old and rare synthesizer. 
   10: 
   11: See cms(4). 
   12: 
   13: ##  PC speaker 
   14: 
   15: It has one-voice polyphony and sounds just awful. Useful only for testing MIDI input devices. 
   16: 
   17: See pcppi(4). 
   18: 
   19: ##  Roland MPU-401 
   20: 
   21: MIDI interface by Roland. It became popular thanks to excessive cloning. 
   22: 
   23: Supported on many ISA cards, and following PCI cards: 
   24: 
   25:   * C-Media CMI8738 - cmpci(4) - support broken in NetBSD 4.0? 
   26:   * ESS Solo-1 - eso(4) 
   27:   * ForteMedia FM801 - fms(4) 
   28:   * Yamaha DS-1 - yds(4) 
   29: 
   30: Usually MPU interfaces are conncted to MIDI/Joystick port on sound cards. You won't be able to play/receive anything unless you connect some external MIDI device to such port. Though, in some rare cases MPU interface is connected to on-board/daughterboard WaveTable MIDI engine. 
   31: 
   32: See mpu(4). 
   33: 
   34: ##  Simple MIDI interfaces 
   35: 
   36: Simple MIDI interfaces are supported on many ISA cards, and following PCI cards: 
   37: 
   38:   * Cirrus Logic CS4280 - clcs(4) 
   39:   * Creative Labs SoundBlaster PCI (Ensoniq AudioPCI based) - eap(4) 
   40:   * Trident 4DWAVE and compatibles - autri(4) 
   41: 
   42: Usually simple MIDI interfaces are connected to MIDI/Joystick port on sound cards. You won't be able to play/receive anything unless you connect some external MIDI device to such port. 
   43: 
   44: Note: MIDI port and synth on SoundBlaster Live! and newer cards by Creative is unsupported. 
   45: 
   46: ##  USB MIDI devices 
   47: 
   48: Many USB MIDI devices are supported. Synth modules, keyboards and MIDI interfaces are handled well. 
   49: 
   50: See umidi(4). 
   51: 
   52: ##  Yamaha OPL2 and OPL3 
   53: 
   54: Popular single-chip FM synthesizer. Almost all ISA cards come with such chip. 
   55: 
   56: Some of the newer cards have compatbile FM engine too. PCI cards based on following chipsets have it: 
   57: 
   58:   * C-Media CMI8738 - cmpci(4) - opl support broken in NetBSD 4.0? 
   59:   * ESS Solo-1 - eso(4) 
   60:   * ForteMedia FM801 - fms(4) 
   61:   * S3 SonicVibes - sv(4) 
   62:   * Yamaha DS-1 - yds(4) 
   63: 
   64: NetBSD opl driver has built-in General MIDI instrument definitions, so your system is ready to play without additional configuration. 
   65: 
   66: Note: New PCI cards by Creative Labs do not have this chip. 
   67: 
   68: See opl(4). 
   69: 
   70: #  Identifying MIDI devices 
   71: 
   72: You can easily discover what kind of MIDI devices are available - try grepping dmesg: 
   73:     
   74:     dmesg | grep midi
   75:     
   76: 
   77: Sample output: 
   78:     
   79:     midi0 at pcppi1: PC speaker (CPU-intensive output)
   80:     midi1 at opl0: Yamaha OPL3 (CPU-intensive output)
   81:     umidi0 at uhub1 port 2 configuration 1 interface 1
   82:     umidi0: Evolution Electronics Ltd. USB Keystation 61es, rev 1.00/1.13, addr 2
   83:     umidi0: (genuine USB-MIDI)
   84:     umidi0: out=1, in=1
   85:     midi2 at umidi0: <0 >0 on umidi0
   86:     
   87: 
   88: In this case three MIDI devices are detected - PC speaker, Yamaha OPL3 and USB MIDI device (Keystation 61es keyboard in this case). 
   89: 
   90: #  Connecting MIDI devices 
   91: 
   92: Connecting MIDI devices is very simple. For example if you want to drive OPL3 using USB MIDI keyboard try: 
   93:     
   94:     cat /dev/rmidi2 > /dev/rmidi1
   95:     
   96: 
   97: You can now play :). 
   98: 
   99: #  MIDI software for NetBSD 
  100: 
  101: Utility called **midiplay** comes with NetBSD. 
  102: 

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb