Code Monkey home page Code Monkey logo

humextra's People

Contributors

craigsapp avatar davidrizo avatar mangelroman avatar napulen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

humextra's Issues

hum2mid: rests are being encoded as MIDI note 0 events

hum2mid is no longer ignoring rests and is instead outputting a MIDI note 0 event.

See for example this Kern file which contains a rest as the last event:

http://kern.ccarh.org/cgi-bin/ksdata?file=elsass01.krn&l=essen/europa/elsass&format=kern

Running hum2mid on this file results in the following output:

elsass01

This is also affecting the Kern scores website direct download of the MIDI file:

http://kern.ccarh.org/cgi-bin/ksdata?file=elsass01.krn&l=essen/europa/elsass&format=midi

Failed Tests Humextra-Miya

(cd humextra; /Library/Developer/CommandLineTools/usr/bin/make regression)
(cd example; /Library/Developer/CommandLineTools/usr/bin/make regression)
bin/run-command-tests
autodynam test 001 FAILED Add termination to crescendo just before next dynmaics item in spine.
autodynam test 002 FAILED Add termination to decrescendo just before next dynmaics item in spine.
autodynam test 003 FAILED Add termination to crescendo on same line before next dynamics item.
autodynam test 004 FAILED Add termination to decrescendo on same line before next dynamics item.
autodynam test 005 FAILED Add termination to explicit wedges/hairpins.
autodynam test 006 FAILED Add termination to interpretive (hidden) wedges/hairpins.
chorck test 001 FAILED Example with four rule violations
extractx test 045 FAILED Extract co-spine information along with a spine.
extractx test 046 FAILED Extract co-spine information along with a spine.
extractx test 047 FAILED Extract co-spine information along with a spine and its duplicate.
extractx test 048 FAILED Extract co-spine information along with a spines in reverse order.
extractx test 049 FAILED Extract co-spine information, ignoring rests in **kern data.
extractx test 050 FAILED Extract co-spine information for the third spine of music.
harm2kern test 010 FAILED Extracting only the base line of the chord.
hum2muse test 001 FAILED Measure the beat position of each point in the score.
notearray test 001 FAILED Basic usage of the notearray program.
tindex test 001 FAILED Extract a pitch sequence only.
tindex test 002 FAILED Extract diatonic musical intervals from two spines.

Wrongly formatted output with cint -l

When using cint with the option -l (lattice), the output is wrongly formatted. I believe the mistake is at line 1677 of the file humextra/cli/cint.cpp:
cout << infile[i];
should be
cout << infile[i] << "\n";

Cheers!

tsroot off-sync parsing the output from Melisma

Hi Craig, I was carefully reading the output from melisma, and while doing that, I noticed something:

For this file: op20n6-03
I am running the meter, harmony and key programs with roman numerals on, and getting the following output:

Kostka-Payne Roman Numeral Analysis:

|A: I  .  .  |V43 I  .  |.  .  V7 |I  .  .  |IV .  I64 |ii6 I64 .  |V  .  .  |.  .  .  |.  .  .  |I64 .  .  |V6 .  V7 |

.  .  I  |.  .  .  |IV .  I  |.  .  V  |I  .  .  |.  .  .  |V43 I  .  |.  .  V7 |I  .  .  |.  .  IV |I6 IV .  |

I  .  IV64 |I  .  .  |IV .  I64 |IV6 vi V43/V |V  V7 I64 |V  .  .  |.  .  I64 |V7 .  I6 |V6 .  I64 |V7 I64 .  |

.  .  IV |I6 IV .  |.  I  IV64 |I  IV .  |I  V6 IV6 |V  .  .  |V7 .  .  |.  .  I  |Chr I64 V  |I  .  .  ]|

If running tsroot to parse and append this analysis to the original humdrum file, I get the following:

**tshrm	**tsroot	**kern	**kern	**kern	**kern
*k[f#c#g#]	*k[f#c#g#]	*k[f#c#g#]	*k[f#c#g#]	*k[f#c#g#]	*k[f#c#g#]
*	*	*A:	*A:	*A:	*A:
*	*	*clefF4	*clefC3	*clefF	*clefF
*M3/4	*M3/4	*M3/4	*M3/4	*M3/4	*M3/4
*A:	*A:	*	*	*	*
I	A	4A	4e	4c#	2.a
.	A	4A	4e	4c#	.
.	A	4A	4e	4c#	.
=2	=2	=2	=2	=2	=2
.	A	4B	2e	4d	8g#
.	A	.	.	.	8a
.	A	4A	.	4c#	8b
.	A	.	.	.	8a
.	A	4r	4r	4r	8cc#
.	r	.	.	.	8c#
=3	=3	=3	=3	=3	=3
V7c	E	4E	4E	2c#	2e
.	E	4E	4E	.	.
I	A	4E	4E	4B	4d
=4	=4	=4	=4	=4	=4
.	A	4AA	4A	4A	4c#
.	A	4A	2r	4r	4r
.	A	4r	.	4c#	8ee
.	A	.	.	.	16dd
.	r	.	.	.	16ee
=5	=5	=5	=5	=5	=5
.	A	2.r	2.r	4d	4ff#
.	r	.	.	4f#	4dd
.	A	.	.	4e	4cc#
=6	=6	=6	=6	=6	=6
.	A	2.r	2.r	4d	4b
V7	E	.	.	4e	8a
.	E	.	.	.	8g#
.	E	.	.	4c#	4a
=7	=7	=7	=7	=7	=7
I	A	4E	4e 4B	4B	8g#
.	A	.	.	.	8ee
.	A	4E	4e 4B	4gg#	4bb
.	A	4E	4B 4e	4gg#	4bb
=8	=8	=8	=8	=8	=8
.	A	4E	4e 4B	4gg#	4bb
.	A	2r	2r	2r	2r
=9	=9	=9	=9	=9	=9
IV	D	4r	4r	4r	8bb
.	D	.	.	.	8ee
.	D	4E	4e	4B	4g#
.	D	4E	4e	4B	4g#
=10	=10	=10	=10	=10	=10
.	r	4r	4r	4r	8ccc#
.	r	.	.	.	8ee
Ic	A	4AA	4e	4c#	4a
.	A	4AA	4e	4c#	4a
=11	=11	=11	=11	=11	=11
iib	B	4r	4r	4r	8g#
.	B	.	.	.	8ee
.	B	4E	4e	8gg#	8bb
.	B	.	.	8aa	8ccc#
Ic	A	4E	4e	8bb	8ddd
.	A	.	.	8aa	8ccc#
=12	=12	=12	=12	=12	=12
.	E	8E	8e	4gg#	4bb
.	r	8F#	8a	.	.
.	A	8E	8g#	2r	2r
.	A	8D	8f#	.	.
.	A	8C#	8e	.	.
.	A	8BB	8d	.	.
=13	=13	=13	=13	=13	=13
V	E	4AA	4c#	4r	2eee
.	E	2r	4c#	4a	.
.	E	.	4c#	4a	8ccc#
.	E	.	.	.	8aa
=14	=14	=14	=14	=14	=14
.	E	2.r	4d	4a	8ff#
.	E	.	.	.	8dd
.	E	.	2r	2r	4ddd
.	r	.	.	.	4r
=15	=15	=15	=15	=15	=15
.	E	2.r	4r	4r	4ee
.	E	.	4e	4aa	4ccc#
.	r	.	4e	4gg#	4bb
=16	=16	=16	=16	=16	=16
.	r	4AA	4a	4aa	4aa
.	E	4C#	2r	2r	2r
.	E	4E	.	.	.
=17	=17	=17	=17	=17	=17
.	E	4A	4e	4c#	2.a
.	E	4A	4e	4c#	.
.	E	4A	4e	4c#	.
=18	=18	=18	=18	=18	=18
.	r	4B	2e	4d	4g#
.	E	4A	.	4c#	8a
.	E	.	.	.	8b
.	E	4r	4r	4r	8cc#
.	E	.	.	.	8c#
=19	=19	=19	=19	=19	=19
Ic	A	4E	4E	2c#	2e
.	A	4E	4E	.	.
.	A	4E	4E	4B	4d
=20	=20	=20	=20	=20	=20
.	A	4AA	4A	4A	4c#
.	A	2r	2r	2r	2r
=21	=21	=21	=21	=21	=21
Vb	E	2.r	2.r	2.r	4A
.	E	.	.	.	4c#
.	E	.	.	.	4d
=22	=22	=22	=22	=22	=22
.	A	2.r	2.r	2.r	8e
.	A	.	.	.	8c#
V7	E	.	.	.	8d
.	E	.	.	.	8e
.	A	.	.	.	8f#
.	A	.	.	.	8g#
=23	=23	=23	=23	=23	=23
.	E	4AA	4F#	2.r	4a
.	E	4AA	4E	.	4g#
.	E	4AA	4D	.	4f#
=24	=24	=24	=24	=24	=24
.	D	2AA	2C#	2.r	2e
.	G	4CC#	4A	.	4e#
=25	=25	=25	=25	=25	=25
.	A	2DD	[2.A	2.r	4f#
.	A	.	.	.	4a
.	A	4EE	.	.	4c#
=26	=26	=26	=26	=26	=26
.	A	2.FF#	2A]	2.r	4d
.	A	.	.	.	4f#
.	A	.	4D#	.	4A
=27	=27	=27	=27	=27	=27
IV	D	4EE	8E	2.r	8G#
.	D	.	8G#	.	8B
.	D	4EE	4B	.	4d
.	D	4EE	4A	.	4c#
=28	=28	=28	=28	=28	=28
.	D	2EE	2G#	2.r	2B
.	r	4r	4r	.	4r
=29	=29	=29	=29	=29	=29
.	A	4r	2G#	2.r	2B
.	A	4EE	.	.	.
.	A	4EE	4A	.	4c#
=30	=30	=30	=30	=30	=30
.	A	4EE	4B	2.r	4d
V	E	2r	4D	.	4G#
.	E	.	4C#	.	4A
=31	=31	=31	=31	=31	=31
I	A	4r	4G#	2.r	4B
.	A	4EE	4G#	.	4B
.	A	4EE	4A	.	4c#
=32	=32	=32	=32	=32	=32
.	r	4EE	4B	2.r	4d
.	A	2r	2r	.	2r
=33	=33	=33	=33	=33	=33
.	A	2.r	2.r	2.r	4A
.	r	.	.	.	4c#
.	A	.	.	.	4d
=34	=34	=34	=34	=34	=34
.	A	2.r	2.r	2.r	8e
.	A	.	.	.	8c#
.	A	.	.	.	8d
.	A	.	.	.	8e
.	A	.	.	.	8f#
.	A	.	.	.	8g#
=35	=35	=35	=35	=35	=35
V7c	E	4AA	4F#	2.r	4a
.	E	4AA	4E	.	4g#
I	A	4AA	4D	.	4f#
=36	=36	=36	=36	=36	=36
.	A	4AA	4C#	2.r	4e
.	A	2r	8D	.	8f#
.	A	.	8E	.	8g#
.	A	.	8F#	.	8a
.	A	.	8G#	.	8b
=37	=37	=37	=37	=37	=37
.	A	2.r	4A	2.r	4cc#
.	A	.	4G#	.	4b
.	A	.	4F#	.	4a
=38	=38	=38	=38	=38	=38
.	r	2.EE	8E	2.r	8g#
.	r	.	8F#	.	8a
V7	E	.	8E	.	8g#
.	E	.	8F#	.	8a
.	E	.	8G#	.	8b
.	E	.	8A	.	8cc#
=39	=39	=39	=39	=39	=39
I	A	8EE	4B	2.r	4dd
.	A	8FF#	.	.	.
.	A	8EE	4B	.	4dd
.	A	8FF#	.	.	.
.	A	8GG#	4B	.	4dd
.	A	8AA	.	.	.
=40	=40	=40	=40	=40	=40
.	A	4GG#	2B	2.r	2dd
.	r	4EE	.	.	.
.	r	4AA	4A	.	4cc#
=41	=41	=41	=41	=41	=41
.	A	4DD	4d	2.r	4b
.	r	4EE	4c#	.	4a
.	A	4EE	4B	.	4g#
=42	=42	=42	=42	=42	=42
.	A	2AA	2A	2.r	2.a
.	r	4r	4r	.	.
==	==	==	==	==	==
*-	*-	*-	*-	*-	*-

Notice that starting from the second measure, the tshrm column is off-sync to what it should be according to the melisma output, I annotated the first 10 measures manually so it can be seen easier

**tshrm	**tshrm_corrected
*k[f#c#g#]	*k[f#c#g#]
*	*
*	*
*M3/4	*M3/4
*A:	*A:
I !1	I !1
.	.
.	.
=2	=2
.	V7c !2
.	.
.	I !3
.	.
.	.
.	.
=3	=3
V7c !2	.
.	.
I !3	V7 !4
=4	=4
.	I !5
.	.
.	.
.	.
.	.
=5	=5
.	IV !6
.	.
.	Ic !7
=6	=6
.	iib !8
V7 !4	Ic !9
.	.
.	.
=7	=7
I !5	V !10
.	.
.	.
.	.
=8	=8
.	.
.	.
=9	=9
IV !6	.
.	.
.	.
.	.
=10	=10
.	Ic !11
.	.
Ic !7	.
.	.
*-	*-

The Roman Numerals are identical to what they should, but the measure and beat are off-sync, it even seems to me that it increases the distance between each label as the score advances. I just want to make sure I am not missing something and is in fact a bug. I will start looking at the code of tsroot to see what is going on. I guess this will happen for every analysis as well.


Fix here #7

hum2xml - syllabic

Currently hum2xml designates all lyric syllables as single. It would be great to have the correct syllabic information (single, begin, middle, or end) based on the dashes in the lyrics.

Example:

**kern	**text
*clefG2	*
*M4/4	*
*k[]	*
*C:	*
=1	=1
4a	a
4a	syl-
4a	-la-
4a	-ble.
==	==
*-	*-

should result in:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE score-partwise PUBLIC "-//Recordare//DTD MusicXML 2.0 Partwise//EN" "http://www.musicxml.org/dtds/partwise.dtd">
<score-partwise version="2.0">
	<part-list>
		<score-part id="P1">
			<part-name></part-name>
		</score-part>
	</part-list>

	<part id="P1">
		<measure number="1">
			<attributes>
				<divisions>1</divisions>
			</attributes>
			<attributes>
				<clef>
					<sign>G</sign>
					<line>2</line>
				</clef>
			</attributes>
			<attributes>
				<time>
					<beats>4</beats>
					<beat-type>4</beat-type>
				</time>
			</attributes>
			<attributes>
				<key>
					<fifths>0</fifths>
					<mode>major</mode>
				</key>
			</attributes>
			<note>
				<pitch>
					<step>A</step>
					<octave>4</octave>
				</pitch>
				<duration>1</duration>
				<voice>1</voice>
				<type>quarter</type>
				<lyric number="1" name="verse">
					<syllabic>single</syllabic>
					<text>a</text>
				</lyric>
			</note>
			<note>
				<pitch>
					<step>A</step>
					<octave>4</octave>
				</pitch>
				<duration>1</duration>
				<voice>1</voice>
				<type>quarter</type>
				<lyric number="1" name="verse">
					<syllabic>begin</syllabic>
					<text>syl</text>
				</lyric>
			</note>
			<note>
				<pitch>
					<step>A</step>
					<octave>4</octave>
				</pitch>
				<duration>1</duration>
				<voice>1</voice>
				<type>quarter</type>
				<lyric number="1" name="verse">
					<syllabic>middle</syllabic>
					<text>la</text>
				</lyric>
			</note>
			<note>
				<pitch>
					<step>A</step>
					<octave>4</octave>
				</pitch>
				<duration>1</duration>
				<voice>1</voice>
				<type>quarter</type>
				<lyric number="1" name="verse">
					<syllabic>end</syllabic>
					<text>ble.</text>
				</lyric>
			</note>
		</measure>
	</part>
</score-partwise>

So, something like this:

void displayLyrics(HumdrumFile& infile, int line, int col, int verse) {
   pline(lev, "<lyric number=\"");
   cout << verse << "\" name=\"verse\">\n";
   lev++;
   string syl = "single";
   
   //find out syllabic information
   string text = infile[line][col];
   if (text.size() > 0) {
      bool first = (text[0] == '-');
      bool last = (text[text.size()-1] == '-');

      if (first) text.erase(0,1);
      if (last) text.erase(text.size()-1,1);

      if ( first && last ) syl = "middle";
      if ( first && !last) syl = "end";
      if ( !first && last) syl = "begin";
   }

   pline(lev, string("<syllabic>"+syl+"</syllabic>\n").c_str());
   pline(lev, "<text>");

   displayHTMLText(text.c_str());

   cout << "</text>\n";
   lev--;
   pline(lev, "</lyric>\n");
}

[prange] score display ledger lines

The blue lines overlapping the black bars in this example on pitches A5 and C6:

Screenshot 2024-01-22 at 10 34 35

Are caused by the lower pitches being written before the upper pitches (so the legerlines below the grand staff do not have the problem. The pitch information above the grand staff should be written from high-to-low instead.

There will still be some problems with colored ledger lines being visible on staff lines where they should not be, so probably better to use boxes rather than note extension lines for display of the histograms, and use lines to simulate ledger lines.

source: https://polishscores.org/?id=18xx:617

[beat] Problems with tied notes

beat seems to have problems when the data tokens contain ].

Run extractxx -k 1,4 | fb -ac | beat -a on the example Bach chorales below. The numbers in front are line indices.

chor081

Bildschirmfoto 2023-11-13 um 15 28 00

chor113

Bildschirmfoto 2023-11-13 um 15 25 46

chor123

Bildschirmfoto 2023-11-13 um 15 22 49

chor346

Bildschirmfoto 2023-11-13 um 15 30 51

Also note the beat will swallow the first line of the chorales kern that contain !!!!SEGMENT....

Humextra regression test failures

I've been trying to install humextra on Mac OS 10.9.5.

When I run make programs, I get several warnings and one error message:

image

For the record, the warnings are:
image
image
image

Most of the regression tests succeed, but there is one failure (sample):
image

However, not all of the utilities were tested. I noticed that rscale was missing. I looked for it in the humextra directory and didn't see it, nor did I find anything alphabetically beyond 'p'.

Humextra/bin has the following files:

bin $ ls -lt
total 59296
-rwxr-xr-x 1 root wheel 682664 Feb 1 17:39 prange
-rwxr-xr-x 1 root wheel 664700 Feb 1 17:39 prettystar
-rwxr-xr-x 1 root wheel 336116 Feb 1 17:39 pae2kern
-rwxr-xr-x 1 root wheel 677684 Feb 1 17:39 pitchmix
-rwxr-xr-x 1 root wheel 642928 Feb 1 17:39 ottava
-rwxr-xr-x 1 root wheel 660728 Feb 1 17:39 notearray
-rwxr-xr-x 1 root wheel 642920 Feb 1 17:39 onset
-rwxr-xr-x 1 root wheel 711848 Feb 1 17:39 myank
-rwxr-xr-x 1 root wheel 638856 Feb 1 17:39 mvspine
-rwxr-xr-x 1 root wheel 765828 Feb 1 17:39 mkeyscape
-rwxr-xr-x 1 root wheel 710228 Feb 1 17:39 mid2hum
-rwxr-xr-x 1 root wheel 656640 Feb 1 17:39 minrhy
-rwxr-xr-x 1 root wheel 638644 Feb 1 17:39 matphrase
-rwxr-xr-x 1 root wheel 656528 Feb 1 17:39 melseq
-rwxr-xr-x 1 root wheel 700104 Feb 1 17:39 lofcog
-rwxr-xr-x 1 root wheel 678592 Feb 1 17:39 keycor
-rwxr-xr-x 1 root wheel 661096 Feb 1 17:39 location
-rwxr-xr-x 1 root wheel 656688 Feb 1 17:39 kern2melisma
-rwxr-xr-x 1 root wheel 643028 Feb 1 17:39 kern2skini
-rwxr-xr-x 1 root wheel 643152 Feb 1 17:39 kern2cmn
-rwxr-xr-x 1 root wheel 643192 Feb 1 17:39 kern2dm
-rwxr-xr-x 1 root wheel 657180 Feb 1 17:39 humsplit
-rwxr-xr-x 1 root wheel 669520 Feb 1 17:39 humtable
-rwxr-xr-x 1 root wheel 660944 Feb 1 17:39 humcat
-rwxr-xr-x 1 root wheel 669272 Feb 1 17:39 humpdf
-rwxr-xr-x 1 root wheel 677308 Feb 1 17:39 hum2xml
-rwxr-xr-x 1 root wheel 942452 Feb 1 17:39 hum2muse
-rwxr-xr-x 1 root wheel 778788 Feb 1 17:39 hum2mid
-rwxr-xr-x 1 root wheel 693140 Feb 1 17:39 hum2mei
-rwxr-xr-x 1 root wheel 647636 Feb 1 17:39 hum2gmn
-rwxr-xr-x 1 root wheel 770544 Feb 1 17:39 hum2abc
-rwxr-xr-x 1 root wheel 669532 Feb 1 17:39 hum2enp
-rwxr-xr-x 1 root wheel 666024 Feb 1 17:39 hgrep
-rwxr-xr-x 1 root wheel 669296 Feb 1 17:39 gettime
-rwxr-xr-x 1 root wheel 665208 Feb 1 17:39 harm2kern
-rwxr-xr-x 1 root wheel 695148 Feb 1 17:39 extractx
-rwxr-xr-x 1 root wheel 660692 Feb 1 17:39 dittox
-rwxr-xr-x 1 root wheel 709672 Feb 1 17:39 cint
-rwxr-xr-x 1 root wheel 665276 Feb 1 17:39 blank
-rwxr-xr-x 1 root wheel 668936 Feb 1 17:39 chorck
-rwxr-xr-x 1 root wheel 643064 Feb 1 17:39 barnum
-rwxr-xr-x 1 root wheel 678752 Feb 1 17:39 beat
-rwxr-xr-x 1 root wheel 673984 Feb 1 17:39 autostem
-rwxr-xr-x 1 root wheel 664912 Feb 1 17:39 barline
-rwxr-xr-x 1 root wheel 647168 Feb 1 17:39 autodynam
lrwxr-xr-x 1 root wheel 24 Feb 1 17:39 partjoin -> ../scripts/perl/partjoin
lrwxr-xr-x 1 root wheel 25 Feb 1 17:39 sortcount -> ../scripts/perl/sortcount
bin $

It looks like the installation failed on proll and then skipped all the subsequent installations.

Is this a problem with an out-of-date compiler? I don't know how to determine what versions I have:

bin $ ls -lt /usr/bin/g++
-rwxr-xr-x 1 root wheel 14224 Aug 6 03:02 /usr/bin/g++
bin $ ls -lt /usr/bin/gcc
-rwxr-xr-x 1 root wheel 14224 Aug 6 03:02 /usr/bin/gcc

Any advice would be appreciated; it's frustrating to be limited to only the first half of the alphabet when using humextras.

Thanks,
Marc Perlman

hum2xml: always include slash attribute in grace tag?

hum2xml does not add the slash attribute to the <grace /> tag if there is no slash intended. This leaves the decision to add a slash to whatever musicxml parser. I would suggest always to include the slash attribute. So, either slash="yes" or slash="no". Any objection to that?

themax pitch wildcard problem

.? does not work.

**kern
8aL
8fJ
8bL
8fJ
8ccL
8fJ
8ccL
8fJ
*-

This search works:
themax -p "a . b . c . c" data4.tindex
output:

data4.krn::1	ZC=	JA F B F C F C F 	M

This one doesn't:
themax -p "a .? b .? c .? c" data4.tindex

Humdrum-Tools regression test failures

I've been trying to install humdrum-tools on Mac OS 10.9.5.

The tools seem to install OK:

local $ which keycor
/usr/local/humdrum-tools/humextra/bin/keycor
local $

However, there are two (accent & infot) that fail the regression test:

image

[ ... ]

image

Are these known problems?

Thanks,
Marc Perlman

Double-flats in hum2xml

Hi Craig,

I was using hum2xml the other day and ran into an issue with double-flats not displaying which I was able to solve. At line 1509, the source has:

if (strstr(buff2, "--") != NULL) { } else if (strstr(buff2, "--") != NULL) { altered = -2; ...

The extra, empty condition for "--" means that double-flats are not being written.

Cheers,

M

Regression test failures

I had a few regression test failures on OS X 10.10.4:

$ make regression | grep -v OK
(cd humdrum; /Applications/Xcode.app/Contents/Developer/usr/bin/make regression)
(cd toolkit-source/regression-tests; /Applications/Xcode.app/Contents/Developer/usr/bin/make -s verbose)
(cd humextra; /Applications/Xcode.app/Contents/Developer/usr/bin/make regression)
(cd example; /Applications/Xcode.app/Contents/Developer/usr/bin/make regression)
bin/run-command-tests 
chorck      test 001 FAILED Example with four rule violations
extractx    test 051 FAILED Extract from multiple segments
Option "debug" from definition:
    debug=b
is already defined in: 
    hum2abc     test 001 FAILED Converting a melody into ABC plus.
hum2muse    test 001 FAILED Measure the beat position of each point in the score.
Error: no elements in buffer to extract.
itemCount = -1
lofcog      test 001 FAILED Measure the center of gravity of a C Major scale.
notearray   test 001 FAILED Basic usage of the notearray program.
xml2hum     test 001 FAILED Convert a MusicXML file into a Humdrum file.    

Failed Regression Tests Ubuntu 20.04 LTS

After working through a new install on Ubuntu 20.04 LTS, after running make regression in the home directory humdrum-tools, I got the following failed tests:

make[2]: Entering directory '/home/davidjohnbaker/humdrum-tools/humextra/example'
bin/run-command-tests 
autodynam	test 001 FAILED	Add termination to crescendo just before next dynmaics item in spine.
autodynam	test 002 FAILED	Add termination to decrescendo just before next dynmaics item in spine.
autodynam	test 003 FAILED	Add termination to crescendo on same line before next dynamics item.
autodynam	test 004 FAILED	Add termination to decrescendo on same line before next dynamics item.
autodynam	test 005 FAILED	Add termination to explicit wedges/hairpins.
autodynam	test 006 FAILED	Add termination to interpretive (hidden) wedges/hairpins.
autostem	test 001 FAILED	Add stems to notes in the treble clef
autostem	test 002 FAILED	Add stems to notes in the bass clef
autostem	test 003 FAILED	Remove stems from notes
autostem	test 004 FAILED	Only add stems to notes which do not have them.
autostem	test 005 FAILED	Add stems to notes, overwriting any which already exist.
autostem	test 006 FAILED	Set the default direction of the middle staff line to point upwards.
autostem	test 007 FAILED	Only override stem direction for non-fixed stems.
autostem	test 008 FAILED	Override fixed stem directions
autostem	test 009 FAILED	Don't add stems to notes which shouldn't have stems.
chorck		test 001 FAILED	Example with four rule violations
extractx	test 045 FAILED	Extract co-spine information along with a spine.
extractx	test 046 FAILED	Extract co-spine information along with a spine.
extractx	test 047 FAILED	Extract co-spine information along with a spine and its duplicate.
extractx	test 048 FAILED	Extract co-spine information along with a spines in reverse order.
extractx	test 049 FAILED	Extract co-spine information, ignoring rests in **kern data.
extractx	test 050 FAILED	Extract co-spine information for the third spine of music.
harm2kern	test 010 FAILED	Extracting only the base line of the chord.
notearray	test 001 FAILED	Basic usage of the notearray program.
scordur		test 001 FAILED	Measure the duration in quarter notes of a short example
tindex		test 001 FAILED	Extract a pitch sequence only.
tindex		test 002 FAILED	Extract diatonic musical intervals from two spines.
make[2]: Leaving directory '/home/davidjohnbaker/humdrum-tools/humextra/example'
make[1]: Leaving directory '/home/davidjohnbaker/humdrum-tools/humextra'

Failed regression tests on WSL2 with Ubuntu 20.04 LTS on Windows 10

autodynam       test 001 FAILED Add termination to crescendo just before next dynmaics item in spine.
autodynam       test 002 FAILED Add termination to decrescendo just before next dynmaics item in spine.
autodynam       test 003 FAILED Add termination to crescendo on same line before next dynamics item.
autodynam       test 004 FAILED Add termination to decrescendo on same line before next dynamics item.
autodynam       test 005 FAILED Add termination to explicit wedges/hairpins.
autodynam       test 006 FAILED Add termination to interpretive (hidden) wedges/hairpins.
autostem        test 001 FAILED Add stems to notes in the treble clef
autostem        test 002 FAILED Add stems to notes in the bass clef
autostem        test 003 FAILED Remove stems from notes
autostem        test 004 FAILED Only add stems to notes which do not have them.
autostem        test 005 FAILED Add stems to notes, overwriting any which already exist.
autostem        test 006 FAILED Set the default direction of the middle staff line to point upwards.
autostem        test 007 FAILED Only override stem direction for non-fixed stems.
autostem        test 008 FAILED Override fixed stem directions
autostem        test 009 FAILED Don't add stems to notes which shouldn't have stems.
chorck          test 001 FAILED Example with four rule violations
extractx        test 045 FAILED Extract co-spine information along with a spine.
extractx        test 046 FAILED Extract co-spine information along with a spine.
extractx        test 047 FAILED Extract co-spine information along with a spine and its duplicate.
extractx        test 048 FAILED Extract co-spine information along with a spines in reverse order.
extractx        test 049 FAILED Extract co-spine information, ignoring rests in **kern data.
extractx        test 050 FAILED Extract co-spine information for the third spine of music.
harm2kern       test 010 FAILED Extracting only the base line of the chord.
notearray       test 001 FAILED Basic usage of the notearray program.
prange          test 001 FAILED Count the pitches in a rising major scale.
prange          test 002 FAILED Count the pitches in a rising major scale with different rhythms
prange          test 003 FAILED Count pitches with duration weighting
prange          test 006 FAILED Count pitches in music adding histogram fraction ranges.
scordur         test 001 FAILED Measure the duration in quarter notes of a short example
tiefix          test 001 FAILED Fix ties which are not correctly terminated.
tiefix          test 002 FAILED Fix ties which are not correctly initiated.
tiefix          test 003 FAILED Fix ties which are not correctly continued.
tindex          test 001 FAILED Extract a pitch sequence only.
tindex          test 002 FAILED Extract diatonic musical intervals from two spines.

hum2xml: gracenote and open phrase mark

The combination of a phrase open mark and a grace note causes hum2xml to misinterpret the duration of the grace note.

Minimal example

**kern
*clefG2
*M4/4
*k[]
*C:
=7
{8gq
1a}
==
*-

Results in:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE score-partwise PUBLIC "-//Recordare//DTD MusicXML 2.0 Partwise//EN" "http://www.musicxml.org/dtds/partwise.dtd">
<score-partwise version="2.0">
	<part-list>
		<score-part id="P1">
			<part-name></part-name>
		</score-part>
	</part-list>

	<part id="P1">
		<measure number="1">
			<attributes>
				<divisions>1</divisions>
			</attributes>
			<attributes>
				<clef>
					<sign>G</sign>
					<line>2</line>
				</clef>
			</attributes>
			<attributes>
				<time>
					<beats>4</beats>
					<beat-type>4</beat-type>
				</time>
			</attributes>
			<attributes>
				<key>
					<fifths>0</fifths>
					<mode>major</mode>
				</key>
			</attributes>
			<note>
				<grace slash="yes"/>
				<pitch>
					<step>G</step>
					<octave>4</octave>
				</pitch>
				<voice>1</voice>
				<type>breve</type>
			</note>
			<note>
				<pitch>
					<step>A</step>
					<octave>4</octave>
				</pitch>
				<duration>4</duration>
				<voice>1</voice>
				<type>whole</type>
			</note>
		</measure>
	</part>
</score-partwise>

Here, the type of the grace note is breve, but should be eighth. Either removing the open phrase mark { or the grace note indication q solves this problem.

Failed Regression Test

The regression test failed. It says that there's "No such file or directory" for bin/run-command-tests." There is also an "Error 127" and an "Error 2." I'm on Windows, so I'm using the Cygwin64 Terminal. I should also say that I don't know much about programming. I've attached the errors in Cygwin below and my computer specifications.

specs

humextra failed regression

Don't getting which keycor

Hi,

in the installation process I get the following answer after which keycor:

*** The humextra command path is configured properly in the PATH environment
*** variable.  Type 'which keycor' to verify that you can see a program in the
*** humextra/bin directory.  If the terminal replies with:
***    /cygdrive/c/users/juanp/AppData/Local/humdrum-tools/humextra/bin/keycor
*** then Humdrum Extras is set up properly and ready for use.

PC@DESKTOP-TOT926H /cygdrive/c/users/juanp/AppData/Local/humdrum-tools
$ which key
/cygdrive/c/users/juanp/AppData/Local/humdrum-tools/humdrum/bin/key

PC@DESKTOP-TOT926H /cygdrive/c/users/juanp/AppData/Local/humdrum-tools
$ which keycor
which: no keycor in (/cygdrive/c/users/juanp/AppData/Local/humdrum-tools/humextra/bin:/cygdrive/c/users/juanp/AppData/Local/humdrum-tools/humdrum/bin:/usr/local/bin:/usr/bin:/cygdrive/c/Program Files/Python38/Scripts:/cygdrive/c/Program Files/Python38:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0:/cygdrive/c/WINDOWS/System32/OpenSSH:/cygdrive/c/Program Files (x86)/LilyPond/usr/bin:/cygdrive/c/Users/juanp/AppData/Local/Microsoft/WindowsApps)

I also don't find any humextra/bin directory in the folders.

Thanks,
Sebastián Páez

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.