.txt lyric files
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
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.