Opened 12 years ago

Closed 9 years ago

#4479 closed enhancement (wontfix)

Add Lyrics visualization to MythMusic

Reported by: Mike Rice <mikerice1969@…> Owned by: paulh
Priority: minor Milestone: unknown
Component: Plugin - MythMusic Version: head
Severity: medium Keywords:
Cc: Ticket locked: yes

Description

The attached patch adds a MythMusic visualization "Lyrics" that displays lyrics from the mp3 file. When there is room it also displays the album art. If the file has no lyrics it behaves just like the "AlbumArt?" visualization.

The lyrics scroll up and down with the UP and DOWN keys. The lyrics page up and down with the PAGEUP and PAGEDOWN keys (assuming you don't have them mapped to FFWD/REW in MythMusic).

It looks nice on a widescreen where you can get a good size image and reasonable length lyrics. It works on a 4:3 TV as well but you might need to format your lyrics to smaller lines to get a better experience. See links for some screen shots.

What it doesn't do (yet?):

It doesn't wrap long lines and just prints "Lyrics" at the bottom of the display in this case. That works well for the main screen with the mini-visualizer to let you know there are lyrics. You can just add some newlines to your lyrics to get them to display. Lyrics are largely written with breaks in places the song breaks so wrapping lines arbitrarily might not be a good thing. Could be a future option.

It uses the "medium" font but there is no way to change this. A key to increase or decrease the font size would be nice.

It doesn't do synchronized lyrics, just the unsynchronized variety.

I have lots of other ideas for this but I figured I better post this now in case others are interested.

http://home.comcast.net/~mikerice1969/wdetv.png http://home.comcast.net/~mikerice1969/monitor1.png http://home.comcast.net/~mikerice1969/43tv.png

Sorry for any style problems. I've been writing code in a slightly different style for too many years but I tried to follow the guide.

Attachments (2)

mythmusic_lyrics.patch (13.7 KB) - added by Mike Rice <mikerice1969@…> 12 years ago.
MythMusic Lyrics Visualization
lyrics_visualizer.patch (11.7 KB) - added by Mike Rice <mikerice1969@…> 10 years ago.
updated for current trunk (21437)

Download all attachments as: .zip

Change History (20)

Changed 12 years ago by Mike Rice <mikerice1969@…>

Attachment: mythmusic_lyrics.patch added

MythMusic Lyrics Visualization

comment:1 Changed 12 years ago by paulh

I'm just wondering how many people have lyrics in there mp3s? I know I don't have any so have no way to test this. What tool did you use to get the lyrics?

I think if this could be adapted to search the net and download the lyrics if they are not stored in the file then it would be of use to far more people.

comment:2 in reply to:  1 Changed 12 years ago by Mike Rice <mikerice1969@…>

Replying to paulh:

I'm just wondering how many people have lyrics in there mp3s? I know I don't have any so have no way to test this. What tool did you use to get the lyrics?

It seems Linux is behind on adding/editing/displaying lyrics. So far I haven't found any Linux applications that do anything with lyrics (but I admit I have not looked hard since I am content with MythMusic for now). On Windows most all players have some lyrics support. Windows Media Player allows you to manually add lyrics (both synchronized and unsynchronized). Winamp has lyrics plugins as well. Most all mp3 tag editors for Windows support editing lyrics.

The Windows tool I use to automatically grab lyrics (and album art) is Zortam Mp3 Media Studio (http://www.zortam.com). I believe it has a free trial is anyone wants to try it out.

I think if this could be adapted to search the net and download the lyrics if they are not stored in the file then it would be of use to far more people.

The Zortam tool supports automatically downloading lyrics (and cover art) but I think it has its own database. There are certainly plenty of lyrics sites available so I suppose some could be scraped. I can look into that and also try harder to find a lyrics displaying Linux app.

comment:3 Changed 12 years ago by stuartm

Milestone: unknown0.22

comment:4 Changed 12 years ago by stuartm

Owner: changed from Isaac Richards to stuartm
Status: newaccepted

Taglib 1.5 has support for unsynchronised lyrics frames. I'd prefer to write the MetaIOTaglib part of this feature using that support and just require users to install taglib 1.5 if they want it enabled.

We may even be able to bump the minimum supported version to 1.5 for 0.22. If Mike doesn't mind I'll sort out the method for retrieving lyrics information.

comment:5 in reply to:  4 Changed 12 years ago by Mike Rice <mikerice1969@…>

Replying to stuartm:

Taglib 1.5 has support for unsynchronised lyrics frames. I'd prefer to write the MetaIOTaglib part of this feature using that support and just require users to install taglib 1.5 if they want it enabled.

We may even be able to bump the minimum supported version to 1.5 for 0.22. If Mike doesn't mind I'll sort out the method for retrieving lyrics information.

Sounds great! I thought I saw some patches for unsynchronized lyric frames but I didn't see them applied when I was writing this... but I just updated and there they are. I'll take a look.

As far as retrieving lyrics I haven't made any progress on that yet... so feel free. :)

comment:6 Changed 12 years ago by stuartm

Version: unknownhead

In hindsight I can see that I wasn't careful enough about the wording. By "method for retrieving lyrics information" I meant the MetaIOTagLib function and not scripts etc for downloading the lyrics themselves.

It's only because I have local modifications and work to do on the metadata classes so it would be easier to avoid conflicts.

comment:7 in reply to:  6 ; Changed 12 years ago by Mike Rice <mikerice1969@…>

Replying to stuartm:

In hindsight I can see that I wasn't careful enough about the wording. By "method for retrieving lyrics information" I meant the MetaIOTagLib function and not scripts etc for downloading the lyrics themselves.

It's only because I have local modifications and work to do on the metadata classes so it would be easier to avoid conflicts.

Ok. I think this means you will rewrite the code to use TagLib? 1.5? Let me know if you want me to do anything.

I'll continue/start looking into the downloading issue.

comment:8 in reply to:  7 Changed 12 years ago by Matt S <skd5aner@…>

Replying to Mike Rice <mikerice1969@gmail.com>:

I'll continue/start looking into the downloading issue.

There are a ton of lyric sites out there, several of which you could probably pull from without problems. However, I can't think of a single source out there that can ensure accurate results. Almost all the sites out there are user submitted lyrics, and I know lots of them are wrong lots of times. Just be careful in sources.

From google, here's some things you might want to look at: http://lyrictracker.com/soap.html http://musicmoz.org/xml/ http://www.metrolyrics.com/xml.html

I honestly can not speak for any of them, just typed "xml lyrics" in google. However, musicmoz looks promising and has a license that looks fairly open: http://musicmoz.org/xml/license.html

comment:9 Changed 11 years ago by stuartm

Owner: stuartm deleted
Status: acceptednew

comment:10 Changed 11 years ago by stuartm

Owner: set to stuartm
Status: newaccepted

Decided I might as well take this one again, when I do the mythmusic mythui port I might include this without needing for it to be a visualiser.

comment:11 Changed 11 years ago by frank.grant56@…

Amarok has a lyric script called lrcShow-II which does a pretty good job.

About: It is a lyrics script for Amarok that shows lrc file as lyrics dynamically in unattached window, and provides an all-function lrc file editor. It has many advanced and amazing functions, please read help documents with build-in browser for details

In the thankyou it mentions the following Thanks to: baidu, sohu, ttplayer, lrcDB, lyrdb, google, winampcn, evillyrics and for providing their lyrics services.

Maybe you could could look at lrcShow-II to see where and how they do the lyrics.

The owner is at xujia19@…

Frank

comment:12 Changed 10 years ago by stuartm

Milestone: 0.220.23

Changed 10 years ago by Mike Rice <mikerice1969@…>

Attachment: lyrics_visualizer.patch added

updated for current trunk (21437)

comment:13 Changed 10 years ago by stuartm

Ticket locked: set

comment:14 Changed 10 years ago by stuartm

Mike, thanks for the updated patch but I'm going to be re-writing the mythmusic UI in 0.23 and it makes more sense to work these sorts of patches in then.

comment:15 Changed 10 years ago by stuartm

Component: mythmusicPlugin - MythMusic

comment:16 Changed 10 years ago by stuartm

Milestone: 0.23unknown

comment:17 Changed 9 years ago by stuartm

Owner: changed from stuartm to paulh
Status: acceptedassigned

comment:18 Changed 9 years ago by robertm

Resolution: wontfix
Status: assignedclosed

Visualizations are going to need a rewrite for MythUI, closing for now, please do feel free to reopen when that framework is in place with an update.

Note: See TracTickets for help on using tickets.