Skip to content

Add "Trompette et tambour" to the Chansons collection - #374

Merged
isc merged 2 commits into
mainfrom
chansons-trompette-et-tambour
Sep 12, 2026
Merged

Add "Trompette et tambour" to the Chansons collection#374
isc merged 2 commits into
mainfrom
chansons-trompette-et-tambour

Conversation

@isc

@isc isc commented Sep 11, 2026

Copy link
Copy Markdown
Owner

The trumpet call in the right hand, the drum in the left — from the same Allerme method as the other twelve songs in the collection.

The score was read off a photo of the page with scripts/omr/, the pipeline in the repo for exactly this: the pitches are measured against the detected staff lines rather than guessed at by eye, then checked on the zoomed overlay.

Two things the generator could not express yet

Beams. This is the collection's first song with eighth notes, and OSMD draws no beam the MusicXML does not ask for — so the book's two beamed pairs came out as separate flags. Two eighths filling a beat are now beamed. Every meter in the collection counts in quarters, so the beat is the meter's own unit and holds the pair and nothing longer; a compound meter beams in threes instead and is refused rather than guessed at, so the next 6/8 song fails the build instead of silently rendering without beams.

Words. rhWords and lhWords sing a staff: same | measures as the notes, syllables separated by spaces, landing on the measure's notes in order (a rest is not sung). A syllable ending in - is hyphenated to the next, across a barline too — et Mon- | sieur. Only the first verse is written; the book prints the others as prose under the score.

Ordering

The song goes at the end of the list rather than at its place in the book. The list index is stamped into the file name (Chansons_13_…), and practice aggregates and fingerings are keyed to that name, so inserting a song would renumber the ones after it and silently re-point the data of everyone who has played them. The header comment now says so — it was the one hazard of this kind the file did not record.

Checks

  • All twelve existing songs regenerate byte-identical (md5 verified) — the beaming and lyric passes change nothing that has no eighths and no words.
  • The 6/8 refusal was exercised with a throwaway song, not just reasoned about.
  • fingerprints.json regenerated, 102/102, so the piece is findable by playing its opening notes.
  • Ruby suite 136 runs / 853 assertions, JS suite 454 tests, both green.
  • /simplify run on four angles; the beat arithmetic was de-duplicated into unitDuration, the run-length beamer replaced by the pair rule it actually is, and the beam threaded on the event instead of as a fifth parameter of noteXml.

Recette

Preview: /previews/chansons-trompette-et-tambour/library.html → Chansons → Trompette et tambour. Worth checking the beams, the hyphenation across the Mon- | sieur barline, and that the left hand's boum reads well where OSMD places it (under the bass staff — the book prints it between the staves).

One thing I could not fill in: the song's page number in the method. The header says "from earlier in the same book" without it; tell me the page and I will make it exact.

🤖 Generated with Claude Code

The trumpet call in the right hand, the drum in the left, from the same
Allerme method as the other twelve. Read off a photo of the page with
scripts/omr/, which is there because pitches on a photographed score are
not something to read by eye.

Two things the generator could not express yet:

- Beams. This is the collection's first song with eighths, and OSMD draws
  no beam the MusicXML does not ask for, so the book's pairs came out as
  separate flags. Two eighths filling a beat are now beamed. Every meter
  here counts in quarters; a compound meter beams in threes and is refused
  rather than guessed at, so the next 6/8 song fails the build instead of
  rendering flat.
- Words. rhWords and lhWords sing a staff, syllables landing on its notes
  in order, a trailing `-` hyphenating across a barline too.

The song goes at the end of the list rather than in book order: the index
is stamped into the file name, and practice aggregates and fingerings are
keyed to that name, so inserting one would re-point the data of everyone
who has played the songs after it. The header now says so. All twelve
existing files regenerate byte-identical.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Preview supprimée (PR fermée). L'URL n'est plus accessible.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@isc
isc merged commit a724b30 into main Sep 12, 2026
6 checks passed
@isc
isc deleted the chansons-trompette-et-tambour branch September 12, 2026 13:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant