pytakt.gm.drums module

This module defines percussion instrument names assigned to each note number as defined by General MIDI.

The following two constants define the relationship between percussion instrument names and note numbers.

  • DRUMS: A map (dict) from note numbers (int) to percussion names (str)

  • ALIASES: A list of 2-tuples consisting of an alias (str) and the original percussion name (str).

In addition, for each percussion instrument, a function is defined that can be used in place of the note() function, with the percussion name as its name. Such a function calls note() with the note number of the corresponding percussion instrument as the first argument, and the calling arguments (if any) as the second and further arguments. Moreover, a constant whose name is ‘N_percussion_name’ and whose value is its note number is defined for each percussion instrument (also for aliases).

Examples

>>> gm.drums.DRUMS[36]
'BassDrum1'
>>> gm.drums.BassDrum1()
EventList(duration=480, events=[
    NoteOnEvent(t=0, n=36, v=80, tk=1, ch=1, noteoff=(+480)),
    NoteOffEvent(t=480, n=36, nv=None, tk=1, ch=1)])
>>> gm.drums.BD(v=50)
EventList(duration=480, events=[
    NoteOnEvent(t=0, n=36, v=50, tk=1, ch=1, noteoff=(+480)),
    NoteOffEvent(t=480, n=36, nv=None, tk=1, ch=1)])
>>> mml("ch=10 $BD() r $SD() r").play()
>>> gm.drums.N_BD
36
AcouBD(*args, **kwargs)
AcouBassDrum(*args, **kwargs)
AcouSD(*args, **kwargs)
AcouSnare(*args, **kwargs)
BD(*args, **kwargs)
BD1(*args, **kwargs)
BD2(*args, **kwargs)
BassDrum1(*args, **kwargs)
Cabasa(*args, **kwargs)
ChineseCY(*args, **kwargs)
ChineseCymbal(*args, **kwargs)
Claves(*args, **kwargs)
ClosedHH(*args, **kwargs)
ClosedHiHat(*args, **kwargs)
Cowbell(*args, **kwargs)
CrashCY(*args, **kwargs)
CrashCY1(*args, **kwargs)
CrashCY2(*args, **kwargs)
CrashCymbal1(*args, **kwargs)
CrashCymbal2(*args, **kwargs)
Cuica(*args, **kwargs)
ElecSnare(*args, **kwargs)
ElectricSnare(*args, **kwargs)
HH(*args, **kwargs)
HT1(*args, **kwargs)
HT2(*args, **kwargs)
HandClap(*args, **kwargs)
HiBongo(*args, **kwargs)
HiMidTom(*args, **kwargs)
HiWoodBlock(*args, **kwargs)
HighAgogo(*args, **kwargs)
HighConga(*args, **kwargs)
HighFloorTom(*args, **kwargs)
HighMidTom(*args, **kwargs)
HighTimbale(*args, **kwargs)
HighTom(*args, **kwargs)
HighWoodBlock(*args, **kwargs)
LT1(*args, **kwargs)
LT2(*args, **kwargs)
LongGuiro(*args, **kwargs)
LongWhistle(*args, **kwargs)
LowAgogo(*args, **kwargs)
LowBongo(*args, **kwargs)
LowConga(*args, **kwargs)
LowFloorTom(*args, **kwargs)
LowMidTom(*args, **kwargs)
LowTimbale(*args, **kwargs)
LowTom(*args, **kwargs)
LowWoodBlock(*args, **kwargs)
MT1(*args, **kwargs)
MT2(*args, **kwargs)
Maracas(*args, **kwargs)
MuteCuica(*args, **kwargs)
MuteHiConga(*args, **kwargs)
MuteTriangle(*args, **kwargs)
OpenCuica(*args, **kwargs)
OpenHH(*args, **kwargs)
OpenHiConga(*args, **kwargs)
OpenHiHat(*args, **kwargs)
OpenTriangle(*args, **kwargs)
PedalHH(*args, **kwargs)
PedalHiHat(*args, **kwargs)
Quijada(*args, **kwargs)
RideBell(*args, **kwargs)
RideCY(*args, **kwargs)
RideCY1(*args, **kwargs)
RideCY2(*args, **kwargs)
RideCymbal1(*args, **kwargs)
RideCymbal2(*args, **kwargs)
RimShot(*args, **kwargs)
SD(*args, **kwargs)
SD2(*args, **kwargs)
ShortGuiro(*args, **kwargs)
ShortWhistle(*args, **kwargs)
SideStick(*args, **kwargs)
SplashCY(*args, **kwargs)
SplashCymbal(*args, **kwargs)
Tambourine(*args, **kwargs)
Triangle(*args, **kwargs)
Vibraslap(*args, **kwargs)