Compare commits

..

2 Commits

Author SHA1 Message Date
sshlien
ad766b0096 2025.02.02 2025-02-02 08:59:06 -05:00
sshlien
7f60c2ec8e 2025.02.02 2025-02-02 08:46:19 -05:00
4 changed files with 37 additions and 8 deletions

View File

@@ -1 +1 @@
January 30 2025
February 02 2025

View File

@@ -15588,3 +15588,29 @@ notes (including pitchbends) present in the midi file. This is
useful for checking the accuracy of abc2midi or the abc notation
representation.
February 02 2025
abc2midi
X:2
T: treble bug
M:6/8
K:G treble-8
cCdDeE|
abc2midi shifts the notes down by 2 octaves instead of 1
Fix: in pitchof_b in store.c
recanted the replacement of
if (v->octaveshift == 0) { /*[JA] 2021-05-21 */
octave = xoctave + clef->octave_offset;
} else {
octave = xoctave + v->octaveshift;
}
for
octave = clef->octave_offset + v->octaveshift + xoctave; /*[SS] 2024-03-02*/
(clef->octave_offset and v->octaveshift are both -1. We want to apply
only one of those.)

View File

@@ -1,7 +1,7 @@
abcMIDI : abc <-> MIDI conversion utilities
midi2abc version 3.61 January 22 2025
abc2midi version 4.99 January 12 2025
abc2midi version 5.00 February 12 2025
abc2abc version 2.22 April 30 2024
yaps version 1.94 April 30 2024
abcmatch version 1.83 February 19 2024

15
store.c
View File

@@ -186,7 +186,7 @@ int main()
*/
#define VERSION "4.99 January 12 2025 abc2midi"
#define VERSION "5.00 February 02 2025 abc2midi"
/* enables reading V: indication in header */
#define XTEN1 1
@@ -3824,6 +3824,7 @@ if (!microtone) *pitchbend = bend; /* don't override microtone */
if (comma53) fprintf(fc53,"%c%d ",note,octave+4);
#endif
*/
/*printf("note = %c accidental= %c pitch = %d bend = %d\n",note,accidental,pitch,bend);*/
if (comma53) convert_to_comma53 (acc, &pitch, pitchbend);
microtone = 0; /* [SS] 2014-01-25 */
setmicrotone.num = 0; /* [SS] 2014-01-25 */
@@ -4298,15 +4299,17 @@ int xoctave, n, m;
};
if (gracenotes && ignore_gracenotes) return; /* [SS] 2010-01-08 */
/* [SS] 2024-03-02
printf("clef->octave_offset = %d v->octaveshift = %d\n",clef->octave_offset,v->octaveshift);
if (v->octaveshift == 0) { [JA] 2021-05-21
/* [SS] 2024-03-02 2025-02-02 don't apply both clef->octave_offset and
v->octaveshift
*/
/*printf("clef->octave_offset = %d v->octaveshift = %d\n",clef->octave_offset,v->octaveshift);*/
if (v->octaveshift == 0) { /*[JA] 2021-05-21 */
octave = xoctave + clef->octave_offset;
} else {
octave = xoctave + v->octaveshift;
}
*/
octave = clef->octave_offset + v->octaveshift + xoctave; /*[SS] 2024-03-02*/
// octave = clef->octave_offset + v->octaveshift + xoctave; /*[SS] 2024-03-02*/
num = n;
denom = m;
if (v->inchord) v->chordcount = v->chordcount + 1;