# VBForums CodeBank > CodeBank - Visual Basic .NET >  VB.Net Library for Midi Input/Output based on Windows Winmm

## kensen

MIDI stands for: Musical Instrument Digital Interface.

Although most users don't have a Midi device connected to their computer, there should be a pre-installed software device named "Microsoft GS Wavetable Synth" which acts like a Midi device connected to a Midi output port. 
In other words, most PC's and Notebooks should be able to play Midi notes and can use: 
Application  <-->  Midi_IO  <-->  Winmm  -->  [Microsoft GS Wavetable Synth]

This solution contains the Midi_IO library, a Test Midi_IO application and a Test Minimum application.

The test application allows the user to select / open Midi ports (if available), play voice notes, try different voices, play different drum sounds, send long (sysx) Midi messages and monitor outgoing short- and long- Midi messages in raw hex format, like:
90 32 64   
90 32 00   
C0 00 00  
F0 7F 7F 04 01 00 7F F7
...

If an external Midi device is connected to the computer through Midi-Interface, USB (Midi over USB), FireWire or otherwise, 
then the test aplication can also receive and monitor incoming short- and long- Midi messages.

Midi_IO simplifies the calls to the C++ style functions in Winmm and handles the required buffers in unmanaged memory.

Midi_IO provides functions and raises events for
- Enumerating Input and Output ports
- Opening and closing Input and Output ports
- Sending and receiving short and long (sysx) Midi messages
- Receiving informative Midi messages

There is 
- NO support for midiStreamOut
- NO support for other Winmm audio functions

--------

VBForums Midi_IO 1_0_1.zip

--------

The repository can also be found on 

Github

----------


## andy_VB_Forums

That's interesting for a project I am trying to put together, what VB version is it created with?

----------


## kensen

> That's interesting for a project I am trying to put together, what VB version is it created with?


It is based on VB.Net and built with VisualStudio 2019

----------

