# Mp3tag adding pipe characters to lyrics in some cases

**URL:** https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167
**Category:** Fixed Bugs
**Tags:** bug-fixed
**Created:** [January 11, 2019, 7:10am UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167 "2019-01-11T07:10:56Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![Oblio](https://community.mp3tag.de/user_avatar/community.mp3tag.de/oblio/32/4828_2.png) [@Oblio](https://community.mp3tag.de/u/Oblio)
#### Post date: [January 11, 2019, 7:10am UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/1 "2019-01-11T07:10:56Z")

</div>

Just came across some files with no language code in the USLT field just "00 00 00" in hex editor. Maybe this is not allowed? but anyway I guess some software does it. Other programs (e.g. Foobar2000, iTunes, dbPowerAmp) read and write these tags successfully without modifying the language code.

Problem with Mp3tag is when the field is initially read it displays with 2 leading pipe chars e.g.

||My beautiful lyric

When the file is written the pipe chars are interpreted as part of the lyric and it becomes

eng||||My beautiful lyric

Can you make Mp3tag "play nice" with these files also please?

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 11, 2019, 7:21am UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/2 "2019-01-11T07:21:59Z")

</div>

I would say that deleting user input would be a bug.  
The way MP3tag behaves now leads to a valid format in the field and safeguards the user input.  
You could instead find out how the invalid format got into the field in the first place and/or correct it before you add further lyrics.

See also this thread which describes why the pipe characters are now kept:

> [@\[F\] Pasting Lyrics into the UNSYNCEDLYRICS tag, gets cut of when there is a Pipe Symbol somehere in the text](https://community.mp3tag.de/t/f-pasting-lyrics-into-the-unsyncedlyrics-tag-gets-cut-of-when-there-is-a-pipe-symbol-somehere-in-the-text/11617/5):
>
> Just came across this behaviour myself. Thought I should bump it as it doesn't have a response as yet. e.g. [C] or [X] I am importing from a text file with Text File-\>Tag. The preview shows the full lyric will be imported but everything after the first pipe is cut off.

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [January 11, 2019, 3:17pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/3 "2019-01-11T15:17:18Z")

</div>

Mp3tag added those pipe symbols on rewriting the USLT frame, so it's a bug.

I've fixed that and further improved the handling of USLT language identifiers with [Mp3tag v2.91e](https://community.mp3tag.de/t/455).

Thanks for reporting!

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 11, 2019, 3:31pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/4 "2019-01-11T15:31:52Z")

</div>

> [@Florian](#):
>
> further improved the handling of USLT language identifiers

With 2.91e I find now that nothing is written in front of the lyrics field, regardless whether there were pipes or language identifiers or nothing at all.  
I thought that adding the pipes and the default language identifier was to make sure that lyrics were shown even if the user forgot them - so right now it is much easier to get no display of lyrics at all in the players.  
If this is intentional I do not see a real improvement.

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [January 11, 2019, 3:35pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/5 "2019-01-11T15:35:08Z")

</div>

I'm now trying the same what those example files showed: writing no language identifier and no description in case nothing is explicitly specified by the user.

If you're writing something like

`eng||Lyrics` or `eng|Description|Lyrics` it should be written correctly.

> [@ohrenkino](#):
>
> so right now it is much easier to get no display of lyrics at all in the players

Please be more specific regarding "the players".

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 11, 2019, 3:47pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/6 "2019-01-11T15:47:04Z")

</div>

Player(s) are my most beloved WMP - this "player" either wants a language identifier in the same language as the OS or the good ole "xxx||".  
For my test song I just entered the following cases:  
1)  
`Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
-\> no display in WMP  
2)  
`||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
-\> no display in WMP  
3)  
`xxx||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
-\> text shows as lyrics in WMP  
4)  
`deu||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
-\> text shows as lyrics in WMP  
5)  
`eng||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
-\> no display in WMP (as expected as the OS is set to German GUI and not to English)

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [January 11, 2019, 4:27pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/7 "2019-01-11T16:27:05Z")

</div>

> [@ohrenkino](#):
>
> WMP - this "player" either wants a language identifier in the same language as the OS or the good ole "xxx||"

I've fixed this with [Mp3tag v2.91f](https://community.mp3tag.de/t/455). It now uses the language identifier that is specified at "Options \> Tags \> Advanced" as default in case no specific identifier is provided.

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 11, 2019, 4:39pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/8 "2019-01-11T16:39:10Z")

</div>

Yes, this is almost like before.  
Yet I am not sure, if the OP is satisfied with it as  
`||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
becomes  
`eng||||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
which is almost like

> [@Oblio](#):
>
> ||My beautiful lyric  
> ...  
> eng||||My beautiful lyric

---

<div class="post-metadata">

### Author: ![Florian](https://community.mp3tag.de/user_avatar/community.mp3tag.de/florian/32/5759_2.png) [@Florian](https://community.mp3tag.de/u/Florian)
#### Post date: [January 11, 2019, 4:48pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/9 "2019-01-11T16:48:47Z")

</div>

> [@ohrenkino](#):
>
> Yet I am not sure, if the OP is satisfied with it as  
> `||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
> becomes  
> `eng||||Lost in Praha WDR 3 Hörspiel | 11.03.2018 | 53:02 Min.`  
> which is almost like

It is different than the OPs case. The file had the language identifier set to null `0x00 0x00 0x00` so it was displayed wrongly as `||Lyrics`. Now Mp3tag detects such conditions and displays it as `eng||Lyrics` (and instead of `eng`, whatever default language identifier is configured).

If you enter `||Lyrics` in Mp3tag, it's considered user input and as you've pointed out above

> [@ohrenkino](#):
>
> deleting user input would be a bug

---

<div class="post-metadata">

### Author: ![ohrenkino](https://community.mp3tag.de/user_avatar/community.mp3tag.de/ohrenkino/32/4843_2.png) [@ohrenkino](https://community.mp3tag.de/u/ohrenkino)
#### Post date: [January 11, 2019, 5:11pm UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/10 "2019-01-11T17:11:23Z")

</div>

Thank you, got it now.

---

<div class="post-metadata">

### Author: ![Oblio](https://community.mp3tag.de/user_avatar/community.mp3tag.de/oblio/32/4828_2.png) [@Oblio](https://community.mp3tag.de/u/Oblio)
#### Post date: [January 16, 2019, 6:47am UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/11 "2019-01-16T06:47:16Z")

</div>

Thanks Florian! eng|| ☀ 😄 👌🏻

---

<div class="post-metadata">

### Author: ![system](https://community.mp3tag.de/uploads/default/original/2X/c/ce7035d426cb755a7916793326d23b465222a407.png) [@system](https://community.mp3tag.de/u/system)
#### Post date: [February 15, 2019, 6:47am UTC](https://community.mp3tag.de/t/mp3tag-adding-pipe-characters-to-lyrics-in-some-cases/44167/12 "2019-02-15T06:47:21Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
