haskore-0.1.0.2: The Haskore Computer Music SystemSource codeContentsIndex
Haskore.Music.GeneralMIDI
Synopsis
type T = T Drum Instr
type Note = Note Drum Instr
type NoteBody = NoteBody Drum Instr
type Instr = Instrument
velocity :: Note drum instr -> Rational
body :: Note drum instr -> NoteBody drum instr
instrument :: NoteBody drum instr -> instr
pitch :: NoteBody drum instr -> T
drum :: NoteBody drum instr -> drum
noteFromStdMelodyNote :: instr -> Note -> Note drum instr
fromStdMelody :: Instr -> T -> T
fromMelodyNullAttr :: Instr -> T () -> T
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
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
toProgram :: Int -> Program
toChannel :: Int -> Channel
bn :: T
wn :: T
hn :: T
qn :: T
en :: T
sn :: T
tn :: T
sfn :: T
dwn :: T
dhn :: T
dqn :: T
den :: T
dsn :: T
dtn :: T
ddhn :: T
ddqn :: T
dden :: T
bnr :: T note
wnr :: T note
hnr :: T note
qnr :: T note
enr :: T note
snr :: T note
tnr :: T note
sfnr :: T note
dwnr :: T note
dhnr :: T note
dqnr :: T note
denr :: T note
dsnr :: T note
dtnr :: T note
ddhnr :: T note
ddqnr :: T note
ddenr :: T note
line :: [T note] -> T note
chord :: [T note] -> T note
changeTempo :: DurRatio -> T note -> T note
transpose :: Relative -> T note -> T note
phrase :: PhraseAttribute -> T note -> T note
(+:+) :: T note -> T note -> T note
(=:=) :: T note -> T note -> T note
type Dur = T
data PhraseAttribute
= Dyn Dynamic
| Tmp Tempo
| Art Articulation
| Orn Ornament
data Dynamic
= Loudness Rational
| Accent Rational
| Crescendo Rational
| Diminuendo Rational
data Tempo
= Ritardando Rational
| Accelerando Rational
data Articulation
= Staccato Dur
| Legato Dur
| Slurred Dur
| Tenuto
| Marcato
| Pedal
| Fermata
| FermataDown
| Breath
| DownBow
| UpBow
| Harmonic
| Pizzicato
| LeftPizz
| BartokPizz
| Swell
| Wedge
| Thumb
| Stopped
data Ornament
= Trill
| Mordent
| InvMordent
| DoubleMordent
| Turn
| TrilledTurn
| ShortTrill
| Arpeggio
| ArpeggioUp
| ArpeggioDown
| Instruction String
| Head NoteHead
data NoteHead
= DiamondHead
| SquareHead
| XHead
| TriangleHead
| TremoloHead
| SlashHead
| ArtHarmonic
| NoHead
accent :: Rational -> T note -> T note
crescendo :: Rational -> T note -> T note
diminuendo :: Rational -> T note -> T note
loudness1 :: Rational -> T note -> T note
ritardando :: Rational -> T note -> T note
accelerando :: Rational -> T note -> T note
staccato :: Dur -> T note -> T note
legato :: Dur -> T note -> T note
defltLegato :: T note -> T note
defltStaccato :: T note -> T note
defltAccent :: T note -> T note
bigAccent :: T note -> T note
Documentation
type T = T Drum InstrSource
type Note = Note Drum InstrSource
type NoteBody = NoteBody Drum InstrSource
type Instr = InstrumentSource
velocity :: Note drum instr -> RationalSource
body :: Note drum instr -> NoteBody drum instrSource
instrument :: NoteBody drum instr -> instrSource
pitch :: NoteBody drum instr -> TSource
drum :: NoteBody drum instr -> drumSource
noteFromStdMelodyNote :: instr -> Note -> Note drum instrSource
fromStdMelody :: Instr -> T -> TSource
in contrast to RhyMusic.fromStdMelody it has fixed instrument type
fromMelodyNullAttr :: Instr -> T () -> TSource
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
show/hide Instances
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
show/hide Instances
toProgram :: Int -> ProgramSource
toChannel :: Int -> ChannelSource
bn :: TSource
wn :: TSource
hn :: TSource
qn :: TSource
en :: TSource
sn :: TSource
tn :: TSource
sfn :: TSource
dwn :: TSource
dhn :: TSource
dqn :: TSource
den :: TSource
dsn :: TSource
dtn :: TSource
ddhn :: TSource
ddqn :: TSource
dden :: TSource
bnr :: T noteSource
wnr :: T noteSource
hnr :: T noteSource
qnr :: T noteSource
enr :: T noteSource
snr :: T noteSource
tnr :: T noteSource
sfnr :: T noteSource
dwnr :: T noteSource
dhnr :: T noteSource
dqnr :: T noteSource
denr :: T noteSource
dsnr :: T noteSource
dtnr :: T noteSource
ddhnr :: T noteSource
ddqnr :: T noteSource
ddenr :: T noteSource
line :: [T note] -> T noteSource
chord :: [T note] -> T noteSource
changeTempo :: DurRatio -> T note -> T noteSource
transpose :: Relative -> T note -> T noteSource
phrase :: PhraseAttribute -> T note -> T noteSource
(+:+) :: T note -> T note -> T noteSource
(=:=) :: T note -> T note -> T noteSource
type Dur = TSource
data PhraseAttribute Source
Constructors
Dyn Dynamic
Tmp Tempo
Art Articulation
Orn Ornament
show/hide Instances
data Dynamic Source
Constructors
Loudness Rational
Accent Rational
Crescendo Rational
Diminuendo Rational
show/hide Instances
data Tempo Source
Constructors
Ritardando Rational
Accelerando Rational
show/hide Instances
data Articulation Source
Constructors
Staccato Dur
Legato Dur
Slurred Dur
Tenuto
Marcato
Pedal
Fermata
FermataDown
Breath
DownBow
UpBow
Harmonic
Pizzicato
LeftPizz
BartokPizz
Swell
Wedge
Thumb
Stopped
show/hide Instances
data Ornament Source
Constructors
Trill
Mordent
InvMordent
DoubleMordent
Turn
TrilledTurn
ShortTrill
Arpeggio
ArpeggioUp
ArpeggioDown
Instruction String
Head NoteHead
show/hide Instances
data NoteHead Source
Constructors
DiamondHead
SquareHead
XHead
TriangleHead
TremoloHead
SlashHead
ArtHarmonic
NoHead
show/hide Instances
accent :: Rational -> T note -> T noteSource
crescendo :: Rational -> T note -> T noteSource
diminuendo :: Rational -> T note -> T noteSource
loudness1 :: Rational -> T note -> T noteSource
ritardando :: Rational -> T note -> T noteSource
accelerando :: Rational -> T note -> T noteSource
staccato :: Dur -> T note -> T noteSource
legato :: Dur -> T note -> T noteSource
defltLegato :: T note -> T noteSource
defltStaccato :: T note -> T noteSource
defltAccent :: T note -> T noteSource
bigAccent :: T note -> T noteSource
Produced by Haddock version 2.7.2