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

Music::PitchNum::ABC - note name and pitch number roles for ABC notation

SYNOPSIS

  package MyCleverMouse;
  use Moo;
  with('Music::PitchNum::ABC');
  ...

Then elsewhere:

  use MyCleverMouse;
  my $x = MyCleverMouse->new;

  $x->pitchname(69);    # A
  $x->pitchnum('A');    # 69

DESCRIPTION

A Music::PitchNum implementation specifically for the ABC notation, which varies from the other notation forms by using case sensitive letters to denote octave indications, otherwise falling back to the Helmholtz form outside the range around middle C (via , and ' marks). Oh, and the accidental notation is also totally different from the other forms.

This module is expected to be used as a Role from some other module; Moo::Role may be informative.

ATTRIBUTES

Just one, ignore_octave which if true (false by default) will cause calls to pitchname to omit the octave indication and return just a plain note.

METHODS

pitchname pitchnumber

Returns the pitch name for the given integer, though will throw an exception if passed something that is not a number.

pitchnum pitchname

Returns the pitch number for the given ABC note name, or undef if the note could not be parsed.

BUGS

Reporting Bugs

Please report any bugs or feature requests to bug-music-pitchnum at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Music-PitchNum.

Patches might best be applied towards:

https://github.com/thrig/Music-PitchNum

Known Issues

None known for the ABC notation support.

SEE ALSO

Music::PitchNum

REFERENCES

http://abcnotation.com/examples

AUTHOR

thrig - Jeremy Mates (cpan:JMATES) <jmates at cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2014-2016 by Jeremy Mates

This module is free software; you can redistribute it and/or modify it under the Artistic License (2.0).