See Pairs
Add Pronunciation

Engine Settings

Defaults

0.95
2

Syllable Component Weights

0.013
0.355
0.014
OnsetNucleusCoda

Vowel Feature Weights

0.921
0.355
0.979
0.053
0.398

Consonant Feature Weights

0.933
0.150
1.000

Gap Penalties

0.300
0.100

Account

Sign In

Need an account?
API
Threshold 0.95
Window 2
Lyrics Input
No folder selected
🗂
Open a folder containing
.txt lyric files
Word Scorer
Phoneme-level rhyme similarity · R ∈ [0, 1]
vs
—

About
Inviscid

A phoneme-based rhyme detection engine implementing computational linguistics research to score, detect, and visualise rhyme in lyrics and poetry.

Methodology

Built on Hirjee & Brown (2010, 2018) and Kondrak (2000). Words are converted to ARPAbet via CMU Pronouncing Dictionary. The rhyme function R(w1,w2)→[0,1] extracts the stress tail and scores syllable pairs: Σ = w_ω·A(onset) + w_ν·Rv(nucleus) + w_κ·A(coda). Consonant clusters aligned via Needleman-Wunsch with genetically-optimised weights.

Known Issues

OOV words
Out-of-vocabulary words use rule-based G2P fallback. Toggle "OOV Words" in the filter pane to highlight them, then right-click to add pronunciations.
High · Coverage
Place weight override
Paper found w_p ≈ 0 but zero collapses all place distinctions; using 0.15.
High · Scoring
Diphthong approximation
AW, AY, OY treated as single vowel points — glide transition ignored.
Medium · Phonology
Flat threshold
Fixed 0.55 for all rhyme types; per-type calibration would improve precision.
Low · Detection

Future Features

  • G2PNeural grapheme-to-phoneme fallback for OOV words and slang.
  • ScoringStress weight w_s applied; all Hirjee & Brown weights tunable via Engine Settings. Train neural scorer on RhymeZone annotations.
  • DetectionPer-type thresholds calibrated on labelled rap corpus.
  • LanguagesMultilingual support via eSpeak/Epitran phonemisation.
  • DiffSide-by-side comparative diff view of two lyrics with shared rhyme highlighting.

Custom Dictionary

Add pronunciations for slang, names, or neologisms not in the CMU dictionary. Use ARPAbet notation (e.g. HH AH1 L OW0 for "hello"). Custom entries are checked after CMU and before G2P fallback. You can also right-click OOV words in the Rhyme Map to add them.

References

Hirjee & Brown (2010). Using Automated Rhyme Detection to Characterize Rhyming Style in Rap Music. Empirical Musicology Review 5(4).

Hirjee & Brown (2018). Dynamically Scoring Rhymes with Phonetic Features and Sequence Alignment. ICCC 2018.

Kondrak (2000). A New Algorithm for the Alignment of Phonetic Sequences. NAACL 2000.

Fingerprint

Stylometric comparison across artists or tracks — visualise rhyme signatures on 7 axes: density, internal rate, perfect rhymes, polysyllabic complexity, bridge reach, quality, and chain density.