SongKong Jaikoz

SongKong and Jaikoz Music Tagger Community Forum

There was a problem changing some files,these have been left with status of changed

Some files I am trying to save have the following error:

24/04/2007 05.32.29:org.jaudiotagger.audio.mp3.MP3File:save:SEVERE: G:\\mp3\\Unsorted - Final\\new - Ernest\\Neil Young & Crazy Horse - Tonight's The Night.mp3:Problem writing tags to file,RuntimeException
24/04/2007 05.32.29:SEVERE: Unable to save record:RecNo:3 becausenull
java.lang.NullPointerException
\tat java.nio.CharBuffer.wrap(Unknown Source)
\tat org.jaudiotagger.tag.datatype.StringFixedLength.writeByteArray(StringFixedLength.java:135)
\tat org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody.write(AbstractID3v2FrameBody.java:215)
\tat org.jaudiotagger.tag.id3.framebody.FrameBodyCOMM.write(FrameBodyCOMM.java:207)
\tat org.jaudiotagger.tag.id3.ID3v23Frame.write(ID3v23Frame.java:375)
\tat org.jaudiotagger.tag.id3.AbstractID3v2Tag.writeFramesToBuffer(AbstractID3v2Tag.java:841)
\tat org.jaudiotagger.tag.id3.ID3v23Tag.write(ID3v23Tag.java:684)
\tat org.jaudiotagger.audio.mp3.MP3File.save(MP3File.java:702)
\tat org.jaudiotagger.audio.mp3.MP3File.save(MP3File.java:674)
\tat com.jthink.jaikoz.data.MP3.saveMP3Data(MP3.java:342)
\tat com.jthink.jaikoz.data.MP3.<init>(MP3.java:125)
\tat com.jthink.jaikoz.data.MP3.saveMP3(MP3.java:74)
\tat com.jthink.jaikoz.TagSaver.run(TagSaver.java:164)
\tat java.lang.Thread.run(Unknown Source)

If I change the tag version from 2.3 to 1.1, the files save fine.

What would be causing the problem for 2.3 tags?

I have sent the file to support@jthink.net

Hi, the problem is that the ID3v2 Comment field in the file is invalid it has a language code of ’ ', when it should be a three letter code that matches an ISO Language code such ‘eng’ for ‘English’ or ‘fra’ for French.
Jaikoz manages to read the field nonetheless but when it comes to writing the field it has a problem because the tagging library expects there to be valid code.

This is a problem for any V2 version (2.2,2.3,2.4) but you can get round it by editing the Comment field and selecting a valid language or by deleting the Comment field.( in this particular field the description is just a series of space characters anyway), then the file will save ok from then on.

I have devised a fix, on saving the file Jaikoz will now set the language code to ‘eng’ on saving. I realise the use of ‘eng’ is fairly arbitary but as well as solving your particular problem this will improve the comptaiblity of your tags making them more likely to work correctly in other applications.
if anyone can think of a reason why it would be better to just maintain the existing but incorrect ’ ’ value please let me know.

The fix will appear in the next release.

Thanks

In my case, deleting the comment field is no problem. However, making Jaikoz more robust for the future is always a good idea :slight_smile:

According to the id3v2.4.0 standard:

Good point, but I feel at them moment that there are bound to be applications that understand ‘eng’ but not ‘XXX’ so I think Ill stick with eng for wider compatability