NAME

MIDI::Simple::Drummer::Rudiments

VERSION

version 0.0813

SYNOPSIS

use MIDI::Simple::Drummer::Rudiments;
my $d = MIDI::Simple::Drummer::Rudiments->new;
$d->count_in;
$d->single_stroke_roll for 1 .. $d->phrases;
$d->write('single_stroke_roll.mid');

DESCRIPTION

This package contains rudiment patterns.

METHODS

new

Sets pan_width to 1/4 distance from center. Sets the reverb effect to 1 and chorus to 0.

I. Roll Rudiments

single_stroke_roll

tap tap tap tap tap tap tap tap
r   l   r   l   r   l   r   l

1. Single Stroke Roll

single_stroke_four

2. Single Stroke Four

[    3    ]     [    3    ]
tap tap tap tap tap tap tap tap
r   l   r   l   r   l   r   l

single_stroke_seven

3. Single Stroke Seven

[           6         ]
tap tap tap tap tap tap tap
r   l   r   l   r   l   r

B. Multiple Bounce Rudiments

multiple_bounce_roll

Not yet implemented...

triple_stroke_roll

5. Triple Stroke Roll

[    3    ] [    3    ]
tap tap tap tap tap tap
r   r   r   l   l   l

double_stroke_open_roll

6. Double Stroke Open Roll (Long Roll)

Alternating diddles

diddle diddle diddle diddle
r  r   l  l   r  r   l  l

five_stroke_roll

7. Five Stroke Roll

Two diddles, accent

[       5       ]
diddle diddle Tap
r  r   l  l    R

six_stroke_roll

8. Six Stroke Roll

Accent, 2 diddles, accent

[         6         ]
Tap diddle diddle Tap
R   l  l   r  r   L

seven_stroke_roll

9. Seven Stroke Roll

3 diddles, accent

[           7          ]
diddle diddle diddle Tap
r  r   l  l   r  r   L

nine_stroke_roll

10. Nine Stroke Roll

4 diddles, accent

[              9              ]
diddle diddle diddle diddle Tap
r  r   l  l   r  r   l  l   R

ten_stroke_roll

11. Ten Stroke Roll

4 diddles, 2 accents

[                 10              ]
diddle diddle diddle diddle Tap Tap
r  r   l  l   r  r   l  l   R   L

eleven_stroke_roll

12. Eleven Stroke Roll

5 diddles, accent

[                  11                ]
diddle diddle diddle diddle diddle Tap
r  r   l  l   r  r   l  l   r  r   L

thirteen_stroke_roll

13. Thirteen Stroke Roll

6 diddles, accent

[                     13                    ]
diddle diddle diddle diddle diddle diddle Tap
r  r   l  l   r  r   l  l   r  r   l  l   R

fifteen_stroke_roll

14. Fifteen Stroke Roll

7 diddles, accent

[                         15                       ]
diddle diddle diddle diddle diddle diddle diddle Tap
r  r   l  l   r  r   l  l   r  r   l  l   r  r   L

seventeen_stroke_roll

15. Seventeen Stroke Roll

8 diddles, accent

[                             17                          ]
diddle diddle diddle diddle diddle diddle diddle diddle Tap
r  r   l  l   r  r   l  l   r  r   l  l   r  r   l  l   R

II. Diddle Rudiments

single_paradiddle

16. Single Paradiddle

Accent, single stroke, diddle

Tap tap diddle
R   l   r  r

double_paradiddle

17. Double Paradiddle

Accent, 3 single strokes, diddle

Tap tap tap tap diddle
R   l   r   l   r  r

triple_paradiddle

18. Triple Paradiddle

6 single taps, diddle

Tap tap tap tap tap tap diddle
R   l   r   l   r   l   r  r

paradiddle_diddle

19. Paradiddle-Diddle

2 alternating taps, 2 alternating diddles

Tap tap tap tap diddle
R   l   r   l   r  r

III. Flam Rudiments

flam

20. Flam

grace tap = flam
r     l     r l

flam_accent

21. Flam Accent

Flam tap tap
l R  l   r

flam_tap

22. Flam Tap

Accented "flam-diddles"

grace Diddle grace Diddle
    l R  r       r L  l

flamacue

23. Flamacue

Flam, accent, 2 taps, flam

flam_paradiddle

24. Flam Paradiddle

Accented flam, tap, diddle

flammed_mill

25. Single flammed Mill

Accented flam-diddle, 2 taps

flam_paradiddle_diddle

26. Flam Paradiddle-Diddle

pataflafla

27. Pataflafla

swiss_army_triplet

28. Swiss Army Triplet

inverted_flam_tap

29. Inverted Flam Tap

flam_drag

30. Flam Drag

IV. Drag Rudiments

drag

31. Drag (Half drag or ruff)

single_drag_tap

32. Single Drag Tap

double_drag_tap

33. Double Drag Tap

lesson_25_two_and_three

34. Lesson 25 (Two and Three)

single_dragadiddle

35. Single Dragadiddle

drag_paradiddle_1

36. Drag Paradiddle #1

drag_paradiddle_2

37. Drag Paradiddle #2

single_ratamacue

38. Single Ratamacue

double_ratamacue

39. Double Ratamacue

triple_ratamacue

40. Triple Ratamacue

pan_left, pan_center, pan_right

$d->pan_left($width);
$d->pan_center;
$d->pan_right($width);

Convenience methods to pan in different directions.

alternate_pan

$d->alternate_pan;
$d->alternate_pan($direction);
$d->alternate_pan($direction, $width);

Pan the stereo balance by an amount.

The pan direction is 0 for left (the default) and 1 for right.

The width can be any integer between 1 and 64 (the default). A width of 64 means "stereo pan 100% left/right."

alternate_note

Abstract method for alternating a note strike based on the beat and note value, given the following parameters.

Arguments & defaults:

critical      : Beats 0 through 4
alternate_pan : Pan every other beat (group)
groups_of     : Number of beats after which we pan
note          : A 1/16th note

single_stroke_n

Abstract method for multiple types of single stroke rolls of n maximum beats.

Arguments & defaults:

critical      : The 4 & 8 beats
alternate_pan : Pan every other beat
accent        : An 1/8th note
note          : A triplet 1/16th note

TO DO

Tempo increase-decrease

With and without metronome

Straight or swing time

Duple or triple application (for 5 & 7 stroke rolls)

Touch velocity

SEE ALSO

MIDI::Simple::Drummer, the eg/* and t/* scripts.

http://en.wikipedia.org/wiki/Drum_rudiment

http://www.vicfirth.com/education/rudiments.php

http://www.drumrudiments.com/

AUTHOR

Gene Boggs <gene@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2009-2023 by Gene Boggs.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.