hmidi: Binding to the OS level MIDI services

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Partial implementation of the MIDI 1.0 standard to communicate with physical or virtual MIDI devices, eg. MIDI keyboards and synths. Supported operating systems are MacOS and Windows. See also the alsa-midi library for similar functionality under Linux. Please note that there was no effort made (yet) to be compatible with the other existing Haskell MIDI libraries.


[Skip to Readme]

Properties

Versions 0.1, 0.2.0.0, 0.2.1.0, 0.2.2.0, 0.2.2.1, 0.2.3.1, 0.2.3.1
Change log None available
Dependencies base (>=3 && <=5), stm, Win32 [details]
License BSD-3-Clause
Copyright (c) 2008-2020 Balazs Komuves
Author Balazs Komuves
Maintainer bkomuves (plus) hackage (at) gmail (dot) com
Category Music, System
Home page http://moire.be/haskell/
Source repo head: darcs get https://hub.darcs.net/bkomuves/hmidi
Uploaded by BalazsKomuves at 2020-12-26T11:48:24Z

Modules

[Index]

Manual Flags

NameDescriptionDefault
Automatic Flags
NameDescriptionDefault
nonoteoff

Translates NoteOff events to NoteOn events with velocity=0.

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for hmidi-0.2.3.1

[back to package description]

hmidi: Haskell bindings to the OS level MIDI services

Partial implementation of the MIDI 1.0 standard to communicate with physical or virtual MIDI devices, eg. MIDI keyboards and synthesizers.

Supported operating systems are MacOS and Windows. See also the alsa-midi library for similar functionality under Linux.

Installation & Usage

It should install with cabal without problems on Mac OS X and Windows. Linux is not supported.

As usual, just run the command:

cabal install 

When using the library, you have to link against the threaded runtime (otherwise random crashes will occur); for example:

ghc --make -threaded -O monitor.hs

Example applications

There are some example command line applications in the examples subdirectory:

You can build them with ghc --make -threaded like above.

Differences between Windows and MacOS

We tried to create a unified Haskell API, but there are still differences between the Windows and Mac implementations. In particular, you cannot create MIDI hosts on Windows.