midi-0.2.0.1: Handling of MIDI messages and files

Safe Haskell | None

Sound.MIDI.General

Contents

- Instrument definitions
- Drum definitions

Description

General-MIDI definitions.

Taken from Haskore.

Synopsis

- instrumentNameToProgram :: String -> Maybe Program
- instrumentNames :: [String]
- instrumentPrograms :: [(String, Program)]
- instrumentFromProgram :: Program -> Instrument
- instrumentToProgram :: Instrument -> Program
- instrumentChannels :: [Channel]
- instruments :: [Instrument]
- data Instrument
  - = AcousticGrandPiano
  - | BrightAcousticPiano
  - | ElectricGrandPiano
  - | HonkyTonk
  - | ElectricPiano1
  - | ElectricPiano2
  - | Harpsichord
  - | Clavinet
  - | Celesta
  - | Glockenspiel
  - | MusicBox
  - | Vibraphone
  - | Marimba
  - | Xylophone
  - | TubularBells
  - | Dulcimer
  - | DrawbarOrgan
  - | PercussiveOrgan
  - | RockOrgan
  - | ChurchOrgan
  - | ReedOrgan
  - | Accordion
  - | Harmonica
  - | TangoAccordian
  - | AcousticGuitarNylon
  - | AcousticGuitarSteel
  - | ElectricGuitarJazz
  - | ElectricGuitarClean
  - | ElectricGuitarMuted
  - | OverdrivenGuitar
  - | DistortionGuitar
  - | GuitarHarmonics
  - | AcousticBass
  - | ElectricBassFinger
  - | ElectricBassPick
  - | FretlessBass
  - | SlapBass1
  - | SlapBass2
  - | SynthBass1
  - | SynthBass2
  - | Violin
  - | Viola
  - | Cello
  - | Contrabass
  - | TremoloStrings
  - | PizzicatoStrings
  - | OrchestralHarp
  - | Timpani
  - | StringEnsemble1
  - | StringEnsemble2
  - | SynthStrings1
  - | SynthStrings2
  - | ChoirAahs
  - | VoiceOohs
  - | SynthVoice
  - | OrchestraHit
  - | Trumpet
  - | Trombone
  - | Tuba
  - | MutedTrumpet
  - | FrenchHorn
  - | BrassSection
  - | SynthBrass1
  - | SynthBrass2
  - | SopranoSax
  - | AltoSax
  - | TenorSax
  - | BaritoneSax
  - | Oboe
  - | EnglishHorn
  - | Bassoon
  - | Clarinet
  - | Piccolo
  - | Flute
  - | Recorder
  - | PanFlute
  - | BlownBottle
  - | Skakuhachi
  - | Whistle
  - | Ocarina
  - | Lead1Square
  - | Lead2Sawtooth
  - | Lead3Calliope
  - | Lead4Chiff
  - | Lead5Charang
  - | Lead6Voice
  - | Lead7Fifths
  - | Lead8BassLead
  - | Pad1NewAge
  - | Pad2Warm
  - | Pad3Polysynth
  - | Pad4Choir
  - | Pad5Bowed
  - | Pad6Metallic
  - | Pad7Halo
  - | Pad8Sweep
  - | FX1Rain
  - | FX2Soundtrack
  - | FX3Crystal
  - | FX4Atmosphere
  - | FX5Brightness
  - | FX6Goblins
  - | FX7Echoes
  - | FX8SciFi
  - | Sitar
  - | Banjo
  - | Shamisen
  - | Koto
  - | Kalimba
  - | Bagpipe
  - | Fiddle
  - | Shanai
  - | TinkleBell
  - | Agogo
  - | SteelDrums
  - | Woodblock
  - | TaikoDrum
  - | MelodicTom
  - | SynthDrum
  - | ReverseCymbal
  - | GuitarFretNoise
  - | BreathNoise
  - | Seashore
  - | BirdTweet
  - | TelephoneRing
  - | Helicopter
  - | Applause
  - | Gunshot
- drumChannel :: Channel
- drumProgram :: Program
- drumMinKey :: Pitch
- drumKeyTable :: [(Drum, Pitch)]
- drumFromKey :: Pitch -> Drum
- drumToKey :: Drum -> Pitch
- drums :: [Drum]
- data Drum
  - = AcousticBassDrum
  - | BassDrum1
  - | SideStick
  - | AcousticSnare
  - | HandClap
  - | ElectricSnare
  - | LowFloorTom
  - | ClosedHiHat
  - | HighFloorTom
  - | PedalHiHat
  - | LowTom
  - | OpenHiHat
  - | LowMidTom
  - | HiMidTom
  - | CrashCymbal1
  - | HighTom
  - | RideCymbal1
  - | ChineseCymbal
  - | RideBell
  - | Tambourine
  - | SplashCymbal
  - | Cowbell
  - | CrashCymbal2
  - | Vibraslap
  - | RideCymbal2
  - | HiBongo
  - | LowBongo
  - | MuteHiConga
  - | OpenHiConga
  - | LowConga
  - | HighTimbale
  - | LowTimbale
  - | HighAgogo
  - | LowAgogo
  - | Cabasa
  - | Maracas
  - | ShortWhistle
  - | LongWhistle
  - | ShortGuiro
  - | LongGuiro
  - | Claves
  - | HiWoodBlock
  - | LowWoodBlock
  - | MuteCuica
  - | OpenCuica
  - | MuteTriangle
  - | OpenTriangle

# Instrument definitions

instrumentNameToProgram :: String -> Maybe Program Source

instrumentNames :: [String]Source

instrumentPrograms :: [(String, Program)]Source

instrumentFromProgram :: Program -> Instrument Source

instrumentToProgram :: Instrument -> Program Source

instrumentChannels :: [Channel]Source

instruments :: [Instrument]Source

data Instrument Source

Constructors

AcousticGrandPiano |
BrightAcousticPiano |
ElectricGrandPiano |
HonkyTonk |
ElectricPiano1 |
ElectricPiano2 |
Harpsichord |
Clavinet |
Celesta |
Glockenspiel |
MusicBox |
Vibraphone |
Marimba |
Xylophone |
TubularBells |
Dulcimer |
DrawbarOrgan |
PercussiveOrgan |
RockOrgan |
ChurchOrgan |
ReedOrgan |
Accordion |
Harmonica |
TangoAccordian |
AcousticGuitarNylon |
AcousticGuitarSteel |
ElectricGuitarJazz |
ElectricGuitarClean |
ElectricGuitarMuted |
OverdrivenGuitar |
DistortionGuitar |
GuitarHarmonics |
AcousticBass |
ElectricBassFinger |
ElectricBassPick |
FretlessBass |
SlapBass1 |
SlapBass2 |
SynthBass1 |
SynthBass2 |
Violin |
Viola |
Cello |
Contrabass |
TremoloStrings |
PizzicatoStrings |
OrchestralHarp |
Timpani |
StringEnsemble1 |
StringEnsemble2 |
SynthStrings1 |
SynthStrings2 |
ChoirAahs |
VoiceOohs |
SynthVoice |
OrchestraHit |
Trumpet |
Trombone |
Tuba |
MutedTrumpet |
FrenchHorn |
BrassSection |
SynthBrass1 |
SynthBrass2 |
SopranoSax |
AltoSax |
TenorSax |
BaritoneSax |
Oboe |
EnglishHorn |
Bassoon |
Clarinet |
Piccolo |
Flute |
Recorder |
PanFlute |
BlownBottle |
Skakuhachi |
Whistle |
Ocarina |
Lead1Square |
Lead2Sawtooth |
Lead3Calliope |
Lead4Chiff |
Lead5Charang |
Lead6Voice |
Lead7Fifths |
Lead8BassLead |
Pad1NewAge |
Pad2Warm |
Pad3Polysynth |
Pad4Choir |
Pad5Bowed |
Pad6Metallic |
Pad7Halo |
Pad8Sweep |
FX1Rain |
FX2Soundtrack |
FX3Crystal |
FX4Atmosphere |
FX5Brightness |
FX6Goblins |
FX7Echoes |
FX8SciFi |
Sitar |
Banjo |
Shamisen |
Koto |
Kalimba |
Bagpipe |
Fiddle |
Shanai |
TinkleBell |
Agogo |
SteelDrums |
Woodblock |
TaikoDrum |
MelodicTom |
SynthDrum |
ReverseCymbal |
GuitarFretNoise |
BreathNoise |
Seashore |
BirdTweet |
TelephoneRing |
Helicopter |
Applause |
Gunshot |

Instances

Bounded Instrument |
Enum Instrument |
Eq Instrument |
Ord Instrument |
Show Instrument |
Ix Instrument |
Random Instrument |
Arbitrary Instrument |

# Drum definitions

drumChannel :: Channel Source

drumProgram :: Program Source

drumMinKey :: Pitch Source

drumKeyTable :: [(Drum, Pitch)]Source

drumFromKey :: Pitch -> Drum Source

drumToKey :: Drum -> Pitch Source

drums :: [Drum]Source

data Drum Source

Constructors

AcousticBassDrum |
BassDrum1 |
SideStick |
AcousticSnare |
HandClap |
ElectricSnare |
LowFloorTom |
ClosedHiHat |
HighFloorTom |
PedalHiHat |
LowTom |
OpenHiHat |
LowMidTom |
HiMidTom |
CrashCymbal1 |
HighTom |
RideCymbal1 |
ChineseCymbal |
RideBell |
Tambourine |
SplashCymbal |
Cowbell |
CrashCymbal2 |
Vibraslap |
RideCymbal2 |
HiBongo |
LowBongo |
MuteHiConga |
OpenHiConga |
LowConga |
HighTimbale |
LowTimbale |
HighAgogo |
LowAgogo |
Cabasa |
Maracas |
ShortWhistle |
LongWhistle |
ShortGuiro |
LongGuiro |
Claves |
HiWoodBlock |
LowWoodBlock |
MuteCuica |
OpenCuica |
MuteTriangle |
OpenTriangle |

Instances

Bounded Drum |
Enum Drum |
Eq Drum |
Ord Drum |
Show Drum |
Ix Drum |
Random Drum |
Arbitrary Drum |