Bug 479095 - Unable to convert/modify id3v2.2 tags
Summary: Unable to convert/modify id3v2.2 tags
Status: RESOLVED NOT A BUG
Alias: None
Product: kid3
Classification: Applications
Component: general (other bugs)
Version First Reported In: 3.9.x
Platform: Debian stable Linux
: NOR normal
Target Milestone: ---
Assignee: Urs Fleisch
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-12-27 19:53 UTC by RoboDude
Modified: 2024-02-24 06:08 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
test id3v2.2 header (32.00 KB, application/octet-stream)
2023-12-27 21:52 UTC, RoboDude
Details

Note You need to log in before you can comment on or make changes to this bug.
Description RoboDude 2023-12-27 19:53:37 UTC
SUMMARY

Neither the gui or the cli seem to be able to save/convert tags on mp3 files with id3v2.2.0 tags.
Conversion from id3v1 and id3v2.4 seems fine, but id3v2.2 does not.
There is no indication either from printed error message or return code from kid3-cli, or from the gui that there was any problem or what the cause was, the file just remains unchanged.

STEPS TO REPRODUCE FOR CLI
1. Run "kid3-cli -c to23 <filename>" on an mp3 with an id3v2.2 tag.

STEPS TO REPRODUCE FOR GUI
1. Configure kid3 to save id3v2.3.0 tags
2. Load an mp3 file with id3v2.2 tag
3. Click "Save"

OBSERVED RESULT

The file remains unchanged with an id3v2.2 tag.
There is also indication of a problem.

EXPECTED RESULT

The tag should be updated to id3v2.3.0 (as configured/specified)

SOFTWARE/OS VERSIONS
kid3-cli and kid3: 3.9.3-1 (Debian bookworm amd64)

ADDITIONAL INFORMATION
Comment 1 Urs Fleisch 2023-12-27 21:10:01 UTC
I cannot reproduce this. I have tested with various files from different sources. I can modify the tag and after saving, they are converted to ID3v2.3. I have tested both with the Id3libMetadata and the TaglibMetadata plugins.
Could you please test with the following file: https://github.com/taglib/taglib/blob/master/tests/data/id3v22-tda.mp3
If the problem is still there, you could provide an example file showing the problem. The beginning of the file containing the ID3v2.2 tag would be sufficient.
Comment 2 Urs Fleisch 2023-12-27 21:14:46 UTC
Reading the issue again, I want to add the following note: You have to modify the file to save it. You can also change a frame and then change it back to the original value, but it must be marked as modified. Then you can save it. The functions from the Tools menu "Convert ID3v2.3 to ID3v2.4" and "Convert ID3v2.4 to ID3v2.3" are NOT for ID3v2.2, they do exactly what their names say.
Comment 3 RoboDude 2023-12-27 21:23:23 UTC
I can understand why the gui might not change the tag without modifying one of the fields, but I would still expect the cli to do it based on the documentation/help.
I will attach the header of a problematic file.
Comment 4 RoboDude 2023-12-27 21:52:19 UTC
Created attachment 164492 [details]
test id3v2.2 header
Comment 5 Urs Fleisch 2023-12-28 16:24:14 UTC
Thanks for the example file. I cannot see any problems with the file, you just have to save it and it will be ID3v2.3.0. Also in the CLI, only modified files are saved, so you will have to make some modification. The save operation will automatically be done by kid3-cli when it terminates and there are modifications. So you could for example use

kid3-cli -c copy -c remove -c paste test.mp3

This is actually what is done by the "Rewrite Tags" action, which can be used from the UI.
By the way, the documentation for the "to23" CLI function is "Convert ID3v2.4 to ID3v2.3", so this will only work if the existing tag is ID3v2.4.