Compare commits

..

1 Commits

Author SHA1 Message Date
sshlien
a67babdb21 2025.01.29 2025-01-29 16:43:42 -05:00
4 changed files with 13 additions and 16 deletions

View File

@@ -1 +1 @@
January 22 2025
January 29 2025

View File

@@ -277,13 +277,9 @@ of numbers ranging from 0 to 7 indicating the presence of note onsets
for the selected percussion instrument for the sequence of beats
in the midi file. Here is a truncated sample of the output.
.br
0 0 0 0 0 0 0 0 1 0 0 4 1 0 0 4 1 0 0 4 1 0 0 4 1 0 0 4 1 0 0 4 1 4 4 0
1 0 0 0 1 0 5 0 1 0 5 0 1 0 5 0 1 0 5 0 1 0 5 0 1 0 5 0 1 0 5 0 1 0 0 0
1 0 5 0 1 0 5 0 1 etc.
11 71 c1 1 11 51 f1 c1 1 11 51 e1 1 11 d1 c1 31 1 1 1 21 b1 d1 d1 51
.br
One can see a repeating 4 beat pattern.
51 51 51 51 41 71 c1 11 1 11 41 11 1 11 41 11 1 11 41 11 31 51 41 11
.PP
-ppat
@@ -294,7 +290,8 @@ If it is unsuccessful, it returns a message of its failue. Otherwise,
encodes the position of these drum onsets in a 8 bit byte for each
quarter note beat in the midi file. The lower (right) 4 bits encode the
bass drum and the higher (left) 4 bits encode the snare drum in the
same manner as described above for -ppatfor.
same manner as described above for -ppatfor. The integers are printed
in hexadecimal.
.br
0 0 0 0 0 0 0 0 0 0 33 145 33 145 33 145 33 145 33 145 33 145 33 145
.br

View File

@@ -6,7 +6,7 @@ abc2abc version 2.22 April 30 2024
yaps version 1.94 April 30 2024
abcmatch version 1.83 February 19 2024
midicopy version 1.40 August 11 2024
midistats version 0.96 July 26 2024
midistats version 0.97 January 29 2025
24th January 2002
Copyright James Allwright

View File

@@ -17,7 +17,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#define VERSION "0.96 October 10 2024 midistats"
#define VERSION "0.97 January 29 2025 midistats"
/* midistrats.c is a descendent of midi2abc.c which was becoming to
large. The object of the program is to extract statistical characterisitic
@@ -1513,9 +1513,9 @@ for (i=1;i<256;i++) {
}
void output_drumpat () {
void output_drumpat (char * c) {
int i;
for (i=0;i<=lastBeat;i++) printf("%d ",drumpat[i]);
for (i=0;i<=lastBeat;i++) printf(c,drumpat[i]);
/*for (i=0;i<lastBeat;i++) output_perc_pattern(drumpat[i]);*/
printf("\n");
}
@@ -1654,11 +1654,11 @@ for (i=0;i<4;i++) {
snaremax = drumhistogram[snareindex];
}
}
if (bassmax && snaremax) {
if (bassmax || snaremax) {
printf("bass %d %d\n",bassindex,bassmax);
printf("snare %d %d\n",snareindex,snaremax);
} else {
printf("missing bass or snare\n");
printf("missing bass and snare\n");
return;
}
dualDrumPattern(bassindex,snareindex);
@@ -1944,11 +1944,11 @@ if (percanalysis) {
if (percpattern) {
drumanalysis();
percsummary();
output_drumpat();
output_drumpat("%x ");
}
if (percpatternfor) {
drumpattern(percnum);
output_drumpat();
output_drumpat("%d ");
}
if (percpatternhist) {
drumanalysis();