- Published on
Synchronized lyrics, annotations and rabbit holes
- Authors
- Name
- Srinjoy Santra
- @s_srinjoy
I always wondered how Spotify lyrics were synced with the song during playback. When you feel giddy as you fumble through the lyrics, this Karaoke-like feature let you follow along visually as each line or word is sung.
After some digging, I found it uses Musixmatch for sourcing the lyrics. In fact, it's the missing puzzle piece that "distribute your lyrics on Spotify, Apple Music, Instagram, and many more platforms, and create unlimited lyric videos for socials.". It provides an easy UI to add timestamps.
Musixmatch stores the lyrics in a proprietary format. However, more commonly, lyrics are stored in a .lrc
file format that contain timestamps paired with lyric lines. It's a text-based format and very similar to subtitles. Somewhat like this.
[ar:Epr Iyer,Bombay Beat Broadcast]
[al:Protest Poetry]
[ti:Srini Bana Epr]
[length:03:06.93]
[00:10.05] Manokamna e Zack de la rocha
[00:12.34] Mimosa ko moses heroic a yoddha ashoka ko
ar
= artist performing the songal
= album the song is fromti
= title of the songlength
= length of the song[hh:mm:ss]
= timestamp in hour, minute and seconds
This works great for lyrics synchronization. But what if I want to know more? I find following hip-hop lyrics very tedious for its pace; Understanding it fully is another uphill task in itself.
Websites like https://genius.com help a great deal with annotations. One drawback I felt there was not a tool to view lyrics as well its annotations synchronized together.
This became the idea for a weekend project. This would have taken more time with my rusty frontend skills so I took help of AI-assisted coding tools.
Syncing annotations may feel a bit too much. So I also gave the option to stop and view the entire list of annotations. I extended the standard .lrc
format to also include annotations in the format of markdown/html
paired with timestamps.
I picked this song from EPR Iyer, an Indian hip-hop artist. Quite known for his lyrically insane verses where each word (sometimes even syllable) has multiple references. Regardless of whether you find his verses a word salad or beautiful, you cannot argue this song is full of references. This makes it a prime example to showcase the idea.
Finding the interpretations for the song was non-trivial. Again, LLM (AI) came to the rescue to gather and summarize it from various sources like
- Rohan Cariappa's breakdown
- Genius.com page of the song
- And a few posts on
r/IndianHipHopHeads
I ended up with another rabbit hole going through the hiphop and rock music references that inspired EPR.
End product was something like this. Best viewed on an expanded desktop view.
(No copyright infringement is intended)