NAME

MIDI::Chord::Guitar - MIDI pitches for guitar chord voicings

VERSION

version 0.0107

SYNOPSIS

use MIDI::Chord::Guitar;

my $mcg = MIDI::Chord::Guitar->new;

my $chord = $mcg->transform('D3', 'dim7', 0);

# MIDI:
#$score->n('wn', @$chord);

DESCRIPTION

MIDI::Chord::Guitar provides MIDI pitches for common chord voicings of an E A D G B E tuned guitar.

Here is a handy diagram of ISO MIDI pitches laid out on a guitar neck:

And here is a diagram of MIDI pitch numbers laid out on a guitar neck:

ATTRIBUTES

chords

$chords = $mcg->chords;

Computed attribute available after construction.

The chord names are given to the module methods as the chord_name. They are as follows:

'' (major)
aug
dim
dim7
m (minor)
m6
m7
m7b5
m7b5#9
m9
m11
maj7
maj7#11
maj9
sus2
sus4
6
6(9)
7
7#5
7#9
7b13
7b5
7b9
7b9b13
9
9sus4
11
13

METHODS

as_file

$filename = $mcg->as_file;

Return the guitar chord data filename location.

transform

$chord = $mcg->transform($target, $chord_name, $variation);

Find the chord given the target, chord_name and variation.

The target must be in the format of an ISO note (e.g. on the guitar, a C note is represented by C3, C4, C5, etc).

If no chord_name is given, major is used. If no variation is given, 0 is used.

voicings

$mcg->voicings($chord_name);

Return all the voicings of a given chord_name.

The order of the voicing variations of a chord is by fret position. So, the first variations are at lower frets. Please use the above diagrams to figure out the exact neck positions.

SEE ALSO

The t/01-methods.t file in this distribution

File::ShareDir

List::Util

Moo

Music::Note

Text::CSV_XS

AUTHOR

Gene Boggs <gene@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 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.