More on CDDB Lookup Helper

Wednesday, 2005-06-01; 00:51:00



Wow, I really am immersed in CDDB Lookup Helper. Take a look:

CDDB Lookup Helper with lyrics



I figured that since I was the song information from the CDDB database and the album artwork from Walmart.com, I might as well go all the way and get the lyrics from LetsSingIt.com (which is, by the way, the most comprehensive lyrics database I have *EVER* seen, despite it's crappy interface).

You'll notice that the lyrics aren't scrolled by a normal scroll bar. That's because CDDB Lookup Helper automatically scrolls the lyrics for you, which allows the window to take up much less space. (Compare to KaraTunes: the ridiculously huge Current Song window was one of my pet peeves. Heh heh, note the inspiration for the auto-scrolling. :) )

You may be interested to know how CDDB Lookup Helper (god I really need a better name) does the automatic scrolling. It's pretty simple, actually. It divides the length of the song by the number of lines in the lyrics, and then calculates a regular interval at which to scroll the lyrics. No, this doesn't work well in most cases. But it's the best that the comp can do without some really serious audio analysis and intelligent determination of the relation between lyrics and audio. However, CDDB Lookup Helper has the next best thing:

Here's how it works. It automatically scrolls the lyrics at a regular interval. However, the up and down buttons do more than actually just scroll the lyrics. CDDB Lookup Helper saves the time index each time you press the back or forward buttons for the lyrics, and then the next time you play that same song, it knows how to better scroll the lyrics so the lyrics are always displayed exactly when you need them. If I may say so myself, it's pretty sweet. I call it "lyrics hinting", just like you "hint" Quicktime movies so they can be streamed over the internet.

It's still a bit rough, as I just implemented it today. For one, if you attempted to constantly modify the hinting, CDDB Lookup Helper would get seriously confuzzled. If you hint it one time, the next time you try to fine tune your adjustment, it would keep reverting back to your original hinting meaning that you would basically have to readjust it the whole way through again. (One way to stop that is to just discard all hints after the current position when you hint. But I'll probably implement that later.)

Another problem is that for fast paced dance music, you can't always reliably ensure that the lyrics are displayed in the window at the right time, since CDDB Lookup Helper only updates every 5 seconds. You can get close, but not perfect. Another side effect of the 5-second update interval is that the way the lyrics are displayed after hinting is not exactly how it appeared during hinting, because the back and forward buttons immediately scroll the lyrics instead of waiting for the end of the current 5-second interval.

Seriously, though, it's an improvement over KaraTunes. I'll probably add full-fledged lyric editing capabilities to CDDB Lookup Helper, but for now it only fetches them from LetsSingIt.com and stores them.

If you've got any suggestions on how to improve hinting, I'm all ears. This is the best solution I came up with. And if you have any other features you might want in such an app, I'd like to hear them too. (Yes, even though CDDB Lookup Helper may not be released for a while.)


Technological Supernova   Unfiled   Older   Newer   Post a Comment