Aoide-0.1.0.2: A simple music library with the capability of generating .ly and .mid files.

Safe HaskellNone
LanguageHaskell2010

Composition.Midi

Description

This module contains the data structures and the function for generating MIDI files from note sequences.

Synopsis

Documentation

data Track Source #

A track consists of one homorhythmic note sequence. Heterorhythmic voices require separate tracks.

Constructors

Track Instrument [Simultaneous] 
Instances
Show Track Source # 
Instance details

Defined in Composition.Midi

Methods

showsPrec :: Int -> Track -> ShowS #

show :: Track -> String #

showList :: [Track] -> ShowS #

data Part Source #

Each part can have a different time signature, tempo and instrumentation. The second argument is the tempo specified in beats per minute.

Instances
Show Part Source # 
Instance details

Defined in Composition.Midi

Methods

showsPrec :: Int -> Part -> ShowS #

show :: Part -> String #

showList :: [Part] -> ShowS #

midi :: String -> [Part] -> IO () Source #

Encodes the score in MIDI format and writes it to the specified file.