Skip to content

Extract line boundaries so rhyme can be modelled #3

Description

@candpixie

The corpus marks sections (*>verse, *>chorus) but never lines. So
cantojam can say where the chorus sits in pitch, but cannot say anything about
rhyme, because it does not know where a lyric line ends.

That is a large missing feature. Rhyme is half of what 填詞 actually is, and
Canto-0243 covers it well on the text side while knowing nothing about melody.
cantojam is positioned to connect the two, and can't yet.

The problem

Infer line boundaries from what the corpus does have:

  • rests in the kern spine
  • phrase marks ({ and } appear in the transcriptions)
  • barlines and metric position
  • melodic contour resets

Then validate: real Cantopop rhymes densely, so if inferred line-final syllables
show a much higher rate of shared 韻母 than chance, the inference is working.
That is a clean, falsifiable test against the 105 songs already present.

Why it is interesting

If it works, cantojam can answer a question no tool currently answers: given
this melody and this rhyme scheme, which words satisfy both the tone
constraint and the rhyme constraint at once. Today those are two separate
lookups a human has to intersect by hand.

Start in scripts/, the finals are already in the jyutping spine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is neededresearchOpen empirical question the corpus could answer

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions