The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

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

VERSION

version 0.0102

SYNOPSIS

  use MIDI::Chord::Guitar;

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

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

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

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 MIDI pitch numbers laid out on a guitar neck:

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

ATTRIBUTES

chords

  $chords = $mcg->chords;

Computed attribute available after construction.

METHODS

as_file

  $filename = $mcg->as_file;

Return the guitar chord data filename location.

transform

  $transformed = $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).

voicings

  $mcg->voicings($chord_name);

Return all the voicings of a given chord_name.

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.