[Logo] Jaikoz and SongKong Forums
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
There was a problem changing some files,these have been left with status of changed  XML
Forum Index -> Jaikoz Issues
Author Message
cpicton

Enthusiast

Joined: 23/03/2007 02:47:00
Messages: 12
Offline

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

Code:
 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.mp3roblem writing tags to file,RuntimeException
 24/04/2007 05.32.29:SEVERE: Unable to save record:RecNo:3 becausenull
 java.lang.NullPointerException
 	at java.nio.CharBuffer.wrap(Unknown Source)
 	at org.jaudiotagger.tag.datatype.StringFixedLength.writeByteArray(StringFixedLength.java:135)
 	at org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody.write(AbstractID3v2FrameBody.java:215)
 	at org.jaudiotagger.tag.id3.framebody.FrameBodyCOMM.write(FrameBodyCOMM.java:207)
 	at org.jaudiotagger.tag.id3.ID3v23Frame.write(ID3v23Frame.java:375)
 	at org.jaudiotagger.tag.id3.AbstractID3v2Tag.writeFramesToBuffer(AbstractID3v2Tag.java:841)
 	at org.jaudiotagger.tag.id3.ID3v23Tag.write(ID3v23Tag.java:684)
 	at org.jaudiotagger.audio.mp3.MP3File.save(MP3File.java:702)
 	at org.jaudiotagger.audio.mp3.MP3File.save(MP3File.java:674)
 	at com.jthink.jaikoz.data.MP3.saveMP3Data(MP3.java:342)
 	at com.jthink.jaikoz.data.MP3.<init>(MP3.java:125)
 	at com.jthink.jaikoz.data.MP3.saveMP3(MP3.java:74)
 	at com.jthink.jaikoz.TagSaver.run(TagSaver.java:164)
 	at 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
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7361
Online

cpicton wrote:

What would be causing the problem for 2.3 tags?
 


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 Paul (Administrator)
cpicton

Enthusiast

Joined: 23/03/2007 02:47:00
Messages: 12
Offline

Thanks

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



According to the id3v2.4.0 standard:
The three byte language field, present in several frames, is used to describe the language of the frame's content, according to ISO-639-2 [ISO-639-2]. The language should be represented in lower case. If the language is not known the string "XXX" should be used. 
paultaylor

Pro
[Avatar]

Joined: 21/08/2006 09:21:27
Messages: 7361
Online

Anonymous wrote:
If the language is not known the string "XXX" should be used 


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
 
Forum Index -> Jaikoz Issues
Go to:   
Powered by JForum 2.1.6 © JForum Team