Hi all,
for some musical analysis i want to map musical notes notated in Helmholtz pitch notation to MIDI note numbers.
I tried this:
#!/usr/bin/env perl + use warnings; use strict; use charnames qw(:full); use Data::Dump; # use utf8; binmode STDOUT, ":utf8"; my $flat = chr( charnames::vianame(qq(MUSIC FLAT SIGN)) ); my $sharp = chr( charnames::vianame(qq(MUSIC SHARP SIGN)) ); print qq( b$flat\n); print qq( a$sharp\n); my %helmholtz_to_midi = ( "a$sharp\/b$flat" => 70 ); dd \%helmholtz_to_midi; __END__
I get:
b♭
a♯
{ "a\x{266F}/b\x{266D}" => 70 }
But i want something like this:
{ "a♯/b♭" => 70 }
How can i do that?
Short and very simplified explanation why i need such strange keys:
Every musical note in the western system of music has at least two incarnations (there are many more, but i skip the details for the moment).
In this case this is b♭ or a♯. For example: if it is a♯, it may belong to the tonality of F♯ where the note is the major third.
But if written as b♭, the tonality may be F where it is a perfect fourth. It depends on the context.
Thank you very much for any hint and best regards, Karl
«The Crux of the Biscuit is the Apostrophe»
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |