NAME
Music::Cadence - Provide musical cadence chords
VERSION
version 0.0103
SYNOPSIS
use Music::Cadence;
my $mc = Music::Cadence->new;
my $notes = $mc->cadence(
key => 'C',
scale => 'major',
type => 'perfect',
octave => 4,
); # [['G4','B4','D4'], ['C4','E4','G4']]
$notes = $mc->cadence(
key => 'C',
scale => 'major',
type => 'imperfect',
leading => 2,
octave => 0,
); # [['D','F','A'], ['G','B','D']]
DESCRIPTION
Music::Cadence provides musical cadence chords.
ATTRIBUTES
None.
METHODS
new
$mc = Music::Cadence->new;
Create a new Music::Cadence object.
cadence
$notes = $mc->cadence; # Use defaults
$notes = $mc->cadence(
key => $key, # Default: C
scale => $scale, # Default: major
type => $type, # Default: perfect
leading => $leading, # Default: 1
octave => $octave, # Default: 0
);
Return an array reference of the chords of the cadence type (and leading chord when type is imperfect) based on the given key and scale name. The octave is optional and if given, should be a number greater than or equal to zero.
Supported cadences are:
perfect
imperfect
plagal
deceptive
Supported scales are:
ionian / major
dorian
phrygian
lydian
mixolydian
aeolian / minor
locrian
The leading chord is a number for each diatonic scale chord to use for the first imperfect cadence chord. So for the key of C major this is:
CM: 1
Dm: 2
Em: 3
FM: 4
GM: 5
Am: 6
Bo: 7
SEE ALSO
https://en.wikipedia.org/wiki/Cadence
https://www.musictheoryacademy.com/how-to-read-sheet-music/cadences/
TO DO
Evaded cadence
Half cadences
AUTHOR
Gene Boggs <gene@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2019 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.