|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.farng.mp3.AbstractMP3FileItem org.farng.mp3.AbstractMP3Tag org.farng.mp3.id3.AbstractID3 org.farng.mp3.id3.AbstractID3v1 org.farng.mp3.id3.ID3v1 org.farng.mp3.id3.ID3v1_1
What is ID3v1.1? |
ID3v1 may well be easy to implement for programmers, but it sure is frustrating for those with their own, creative ideas. Since the ID3v1 tag had a fixed size and no space marked "Reserved for future use", there isn't really room for that much improvement, if you want to maintain compatibility with existing software. One who found a way out was Michael Mutschler who made a quite clever improvement on ID3v1. Since all non-filled fields must be padded with zeroed bytes its a good assumption that all ID3v1 readers will stop reading the field when they encounter a zeroed byte. If the second last byte of a field is zeroed and the last one isn't we have an extra byte to fill with information. As the comments field is to short to write anything useful in the ID3v1.1 standard declares that this field should be 28 characters, that the next byte always should be zero and that the last byte before the genre byte should contain which track on the CD this music comes from. |
Field Summary | |
protected byte |
track
|
Fields inherited from class org.farng.mp3.id3.ID3v1 |
album, artist, comment, genre, title, year |
Constructor Summary | |
ID3v1_1()
Creates a new ID3v1_1 object. |
|
ID3v1_1(AbstractMP3Tag mp3tag)
Creates a new ID3v1_1 object. |
|
ID3v1_1(ID3v1_1 copyObject)
Creates a new ID3v1_1 object. |
|
ID3v1_1(java.io.RandomAccessFile file)
Creates a new ID3v1_1 object. |
Method Summary | |
void |
append(AbstractMP3Tag tag)
This method does nothing, but is called by subclasses for completeness |
boolean |
equals(java.lang.Object obj)
Determines whether another object is equal to this tag. |
java.lang.String |
getComment()
|
java.lang.String |
getIdentifier()
ID string that usually corresponds to the class name, but can be displayed to the user. |
byte |
getTrack()
|
java.lang.String |
getTrackNumberOnAlbum()
|
void |
overwrite(AbstractMP3Tag tag)
This method does nothing, but is called by subclasses for completeness |
void |
read(java.io.RandomAccessFile file)
import java.io.IOException; import java.io.RandomAccessFile; read from current file pointer position. |
boolean |
seek(java.io.RandomAccessFile file)
Looks for this tag. |
void |
setComment(java.lang.String comment)
|
void |
setTrack(byte track)
|
void |
setTrackNumberOnAlbum(java.lang.String trackNumberOnAlbum)
|
java.lang.String |
toString()
|
void |
write(AbstractMP3Tag tag)
This method does nothing, but is called by subclasses for completeness |
void |
write(java.io.RandomAccessFile file)
Method to write this object to the file argument at is current file pointer position. |
Methods inherited from class org.farng.mp3.id3.ID3v1 |
delete, getAlbum, getAlbumTitle, getArtist, getAuthorComposer, getGenre, getID3tag, getLeadArtist, getSize, getSongComment, getSongGenre, getSongLyric, getSongTitle, getTitle, getYear, getYearReleased, iterator, setAlbum, setAlbumTitle, setArtist, setAuthorComposer, setGenre, setLeadArtist, setSongComment, setSongGenre, setSongLyric, setSongTitle, setTitle, setYear, setYearReleased |
Methods inherited from class org.farng.mp3.id3.AbstractID3v1 |
append, overwrite |
Methods inherited from class org.farng.mp3.AbstractMP3Tag |
isSubsetOf |
Methods inherited from class org.farng.mp3.AbstractMP3FileItem |
isSubsetOf |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected byte track
Constructor Detail |
public ID3v1_1()
public ID3v1_1(ID3v1_1 copyObject)
public ID3v1_1(AbstractMP3Tag mp3tag)
public ID3v1_1(java.io.RandomAccessFile file) throws TagNotFoundException, java.io.IOException
Method Detail |
public void setComment(java.lang.String comment)
setComment
in class ID3v1
public java.lang.String getComment()
getComment
in class ID3v1
public java.lang.String getIdentifier()
AbstractMP3FileItem
getIdentifier
in class ID3v1
public void setTrack(byte track)
public byte getTrack()
public void append(AbstractMP3Tag tag)
AbstractMP3Tag
append
in class ID3v1
public boolean equals(java.lang.Object obj)
AbstractMP3Tag
super.equals(object)
.
equals
in class ID3v1
public void overwrite(AbstractMP3Tag tag)
AbstractMP3Tag
overwrite
in class ID3v1
public void read(java.io.RandomAccessFile file) throws TagNotFoundException, java.io.IOException
AbstractMP3FileItem
read
in class ID3v1
TagNotFoundException
java.io.IOException
public boolean seek(java.io.RandomAccessFile file) throws java.io.IOException
AbstractMP3Tag
seek
in class ID3v1
java.io.IOException
public java.lang.String toString()
toString
in class ID3v1
public void write(AbstractMP3Tag tag)
AbstractMP3Tag
write
in class ID3v1
public void write(java.io.RandomAccessFile file) throws java.io.IOException
AbstractMP3FileItem
write
in class ID3v1
java.io.IOException
public java.lang.String getTrackNumberOnAlbum()
getTrackNumberOnAlbum
in class ID3v1
public void setTrackNumberOnAlbum(java.lang.String trackNumberOnAlbum)
setTrackNumberOnAlbum
in class ID3v1
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |