abcjs icon indicating copy to clipboard operation
abcjs copied to clipboard

Q: notes higher than 'c' are not audible when using MIDI instrument 67. Why?

Open VKondakoff opened this issue 1 year ago • 2 comments

Hello!

I'm trying to set my MIDI instrument to tenor sax using %%MIDI program 67. After inserting this line all the notes higher than 'c' are not audible. The same notes are playing well with default instrument (piano).

%%MIDI program 67
X: 1
K: C
| c d e f | g a b c' | d' c' b a | g f e d c |

Here is an interactive example.

Why this happens? This is normal range of tenor sax.

Thank you!

VKondakoff avatar Feb 23 '24 12:02 VKondakoff

Ok, got it. Looks like MIDI instrument numbers should be specified like this: number-1. So %%MIDI program 67 was setting baritone sax instead of tenor. Is this intentional? The examples in abc music notation standard 2.2 are using exact MIDI instrument number (for example: %%MIDI program 1 75 % recorder).

VKondakoff avatar Mar 01 '24 01:03 VKondakoff

I was copying the numbers from the abcmidi program because I wanted to be compatible. I think that was a bug in the original implementation. I wasn't aware that the standard now supports the real midi numbers. But that would mean that all of the files out there will play wrong, so I don't know what to do. I'd rather use the real midi numbers.

paulrosen avatar Apr 10 '24 16:04 paulrosen