Adding lyrics to mp3 metadata...

I'm having a very hard time finding information on whether this is a possibility or not. Google is failing me. Anyway, I'm curious as to whether it's possible to add lyrics to an mp3 file. What I mean is, is there a way to add lyrics to the file so that no matter what audio software you use, be it iTunes, Windows Media Player, Winamp, whatever, the lyrics will still show up. Similar to how the artist, album, track number, etc. show up in any software once the file has been tagged properly. I really don't want to have to manually add the lyrics in each individual software just to be sure that users of each software can see the lyrics.

I ask this because I'm a musician with a Soundcloud page and I would like it if people could download my tracks and have the lyrics available no matter what software they use. Therefore plugins to find lyrics online are of no use to me in this situation since no one knows who I am haha.

I hope this has made sense and someone can give me some information since as I stated, searching for answers on google has proved fruitless. Thank you!

you could have a look at the help:

The standard field for lyrics is UNSYNCEDLYRICS in MP3tag.
Please note, that you have to prefix a language identifier in front of the lyrics or "xxx" if you want the lyrics to show in any language. Also you have to add two "bars":
xxx||My lytics

There is no guarantee that "any" player will show the lyrics as this is down to the features of the player. But if the player should be able to display lyrics, then UNSYNCEDLYRICS would be the field of choice.

Thank you so much ohrenkino! I had the language identifier but was missing the two bars. Now it's tagging just as I wanted. Your information was a huge help so again, thank you!

It seems, there is some incompatibility between Mp3tag and foobar2000, in using a language of lyrics. If a FLAC, containing UNSYNCED LYRICS eng||here_goes_lyrics, convert in foobar to MP3, the resulting MP3 file in foobar will show USLT: eng||here_goes_lyrics, while in Mp3tag eng||eng||here_goes_lyrics. I explained it in foobar forum here. The last answer:

I don't know, what implementation is right. But every time, after converting in fb2000, I must to copy lyrics (from FLAC to MP3) in Mp3tag.

Apparently, some frames come with a default language. The COMMENT field is also such a candidate.
If foobar treats any UNSYNCEDLYRICS field as English, regardless of the language token in the data, I would think that this is not really correct.

Perhaps inserting "xxx||" instead of "eng||", "ita||" or "fra||" as header which is the dummy for "any language" might do something about it.

Unfortunately, no. In the USLT tag of resulting .mp3 file Mp3tag shows eng||xxx|here_goes_lyrics.

By the way: in last some years I never get e-mail notifications about new posts in subscripted topics, despite I did subscriptions, manually. :frowning:

As I understand the difference of tag-types between FLAC and MP3 files, ...
FLAC uses VORBIS COMMENT tag, and MP3 uses ID3v2.x tag.

For the ID3v2.x tag the USLT data record is designed as ...
(in Mp3tag the pipe symbol is the replacement character for the technical binary null value).

For the FLAC/VORBIS tag I would expect not such data structure, but only the text stream, without any language token and descriptor comment.

Therefore a FLAC's UNSYNCEDLYRICS tag-field should not carry the value coded for an ID3v2.x tag.
"eng||here_goes_lyrics" is not the right format for FLAC, ...
"here_goes_lyrics" should be correct, ...
... I think so.

See also ...
Sprach-Vorzeichen vor Lyrics in UNSYNCEDLYRICS id3tag?
Basic .txt export
How to import a file lyrics.txt


Probably You are right. Supports Your opinion foobars's behavior with the same song's FLAC and MP3 files, containing fra||here_goes_lyrics: in playlist viewer, %unsynced lyrics% column shows fra||here_goes_lyrics for FLAC, and only here_goes_lyrics for MP3.

And Mp3tag treats it in this way: if I cut/paste tags (or simply modify lyrics) of song with simple here_goes_lyrics (without language marker), in case of MP3 files Mp3tag inserts the eng||, while FLAC files remains without this marker.

DetlevD, thank you very much for so explained help and for links.

From the other hand: what is the reason of language marker in ID3v2.x, if both foobar and Mp3tag insert allways only eng|| marker, ignoring the language tag TLAN? English, this primitiv pidgin is the only one language in the world? :frowning:

In Mp3tag, this is only for the lazy or those who do not pay attention: if you enter a language token, then MP3tag leaves that as it is. If you have not entered one, then MP3tag adds "eng||" as this is a setting that many players use a a default: they offer the OS language plus English as a fallback.
If you stick to editing files with MP3tag, you will not get any added language tokens if you have already entered one.
It may be interesting to find out, if it is foobar that always adds eng|| regardless of the already found language labels or if it is Mp3tag.

Doesn't it depend on the currently set language within Mp3tag?
If you want to be language independent, then use 'xxx' as the language token.


Yes, You are right. But, probably because of FLAC's standard, what, as DetlevD wrote, doesn't use the lan|| language marker. Foobar treats this in FLAC's as part of the lyrics.

I changed my mail and settings. Anybody will so kind as to write here a new comment? So I could check notification in my mailbox. Thank you in advance.

Ryerman: yes, thank you!

Maybe you got a notification for this post

Some players include the language abbreviation at the start of the lyrics as part of the lyrics, so I prefer to have this in the appropriate tag.
The previous author mentioned TLAN. Is this the tag which MP3tag identifies as LANGUAGE? If so, what form should the entry take? 3 lower-case letters, such as "eng"?

But the language descriptor is part of the USLT-Frame-Definition (UNSYNCHEDLYRICS). I see no way to not include it with mp3tag.


As menitioned in the mp3tag-help-site it is defined by
ISO 639-2

To wish list

Now, if I add lyrics (USLT) to an MP3 file without leading ANY|| (eng||, hun||, deu|||,...), Mp3tag adds it, depending on my settings (as a new feature). I like it more in the way, if it depends on founded TLAN tag, if exist; if missing, then on my settings, as now.