quebin31 / muso

muso: music sorter
GNU General Public License v3.0
90 stars 5 forks source link

MP3 containing synced lyrics produces "Parsing: invalid SYLT timestamp format" #12

Closed ghost closed 3 years ago

ghost commented 3 years ago

Describe the bug If an MP3 contains embedded lyrics (synced lyrics) via the SYLT tag, muso fails sorting them, no matter if the embedded lyrcis are conforming the ID3v2.3/4 or not.

To Reproduce Steps to reproduce the behavior:

  1. Add synced lyrics to the MP3 file (e.g. via SYLT Editor)
  2. Drop it to (one of) the watching directory of muso
  3. muso throws the error Parsing: invalid SYLT timestamp format

Expected behavior The SYLT tag is unimportant for the sorting of the files. No matter if the content of the tag is valid and/or parseable, muso should not refuse sorting the file.

Desktop (please complete the following information):

Additional context The used version of muso is 1.5.0.

quebin31 commented 3 years ago

This, most probably, is an error from the id3 crate but I want to debug it first myself, can you please provide me the exact (key, value) pair that make it fail?

ghost commented 3 years ago

I used mid3v2 to extract the key-value data:

SYLT=[9720ms]: Not tryna be indie
[12470ms]: Not tryna be cool
[15100ms]: Just tryna be in this
[17720ms]: Tell me how you choose
[20420ms]: Can you feel where the wind is?
[23090ms]: Can you feel it through
[26020ms]: All of the windows
[28340ms]: Inside this room?
[31910ms]: 
[31910ms]: 'Cause I wanna touch you, baby
[34580ms]: And I wanna feel you, too
[37440ms]: I wanna see the sunrise and your sins
[40560ms]: Just me and you
[42680ms]: 
[42680ms]: Light it up, on the run
[47890ms]: Let's make love, tonight
[53240ms]: Make it up, fall in love, try
[65130ms]: 
[65130ms]: But you'll never be alone
[67740ms]: I'll be with you from dusk 'til dawn
[70420ms]: I'll be with you from dusk 'til dawn
[73340ms]: Baby, I'm right here
[75770ms]: I'll hold you when things go wrong
[78370ms]: I'll be with you from dusk 'til dawn
[81080ms]: I'll be with you from dusk 'til dawn
[84070ms]: Baby, I'm right here
[91780ms]: 
[91780ms]: I'll be with you from dusk 'til dawn
[94690ms]: Baby, I'm right here
[97710ms]: 
[97710ms]: We were shut like a jacket
[100360ms]: So do your zip
[103100ms]: We would roll down the rapids
[105720ms]: To find a wave that fits
[108440ms]: Can you feel where the wind is?
[111120ms]: Can you feel it through
[114080ms]: All of the windows
[116780ms]: Inside this room?
[119800ms]: 
[119800ms]: 'Cause I wanna touch you, baby
[122720ms]: I wanna feel you, too
[125280ms]: I wanna see the sunrise and your sins
[128550ms]: Just me and you
[130700ms]: 
[130700ms]: Light it up, on the run
[135900ms]: Let's make love tonight
[141330ms]: Make it up, fall in love, try
[153110ms]: 
[153110ms]: But you'll never be alone
[155730ms]: I'll be with you from dusk 'til dawn
[158440ms]: I'll be with you from dusk 'til dawn
[161380ms]: Baby, I'm right here
[163860ms]: I'll hold you when things go wrong
[166410ms]: I'll be with you from dusk 'til dawn
[169030ms]: I'll be with you from dusk 'til dawn
[172010ms]: Baby, I'm right here
[174280ms]: 
[174280ms]: Go, give love to your body
[176970ms]: It's only you that can stop it
[179660ms]: Go, give love to your body
[182190ms]: It's only you that can stop it
[185060ms]: Go, give love to your body
[187200ms]: It's only you that can stop it
[190400ms]: Go, give love to your body
[193260ms]: Go, give love to your body
[198600ms]: 
[198600ms]: But you'll never be alone
[201060ms]: I'll be with you from dusk 'til dawn
[203750ms]: I'll be with you from dusk 'til dawn
[206740ms]: Baby, I'm right here
[209200ms]: I'll hold you when things go wrong
[211750ms]: I'll be with you from dusk 'til dawn
[214420ms]: I'll be with you from dusk 'til dawn
[217410ms]: Baby, I'm right here
[225120ms]: 
[225120ms]: I'll be with you from dusk 'til dawn
[228110ms]: Baby, I'm right here

(℗ 2017 RCA RECORDS, A DIVISION OF SONY MUSIC ENTERTAINMENT)

quebin31 commented 3 years ago

Thanks, I'll check it out when I have some time :)

quebin31 commented 3 years ago

@bloomvdomino Which software did you use to write the synchronized lyrics?

ghost commented 3 years ago

@bloomvdomino Which software did you use to write the synchronized lyrics?

Actually the same I used for extracting, as Linux lacks an other good tool for doing that. I also used jid3lib to validate the lyrics (http://javamusictag.sourceforge.net/api/org/farng/mp3/id3/FrameBodySYLT.html).

quebin31 commented 3 years ago

@bloomvdomino please check if the latest version fixes the issue

ghost commented 3 years ago

Thanks. It's now fixed!