|
|||||||||||
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.lyrics3.AbstractLyrics3 org.farng.mp3.lyrics3.Lyrics3v1
Lyrics3 made easy |
What is Lyrics3? |
When Winamp introduced its plugin capabilities Kuo (Djohan) Shiang-shiang's Lyrics Displayer was one of the first plugins, and probably the first program that made a connection between MP3 audio and lyrics. The lyrics displayed by Kuo's Lyrics Displayer were stored in separate text files from which the program got it. Petr Strnad saw the problems in this so he decided to make a lyrics tag, enabling the text to reside inside the audio file. This is done by creating a chunk of data which begins with "LYRICSBEGIN", ends with "LYRICSEND" and has the lyrics between these keywords. This data block is then saved in the audio file between the audio and the ID3 tag. If no ID3 tag is present one must be attached. The following simple rules applies to the lyrics inserted between the keywords:
|
Constructor Summary | |
Lyrics3v1()
Creates a new Lyrics3v1 object. |
|
Lyrics3v1(AbstractMP3Tag mp3Tag)
Creates a new Lyrics3v1 object. |
|
Lyrics3v1(Lyrics3v1 copyObject)
Creates a new Lyrics3v1 object. |
|
Lyrics3v1(java.io.RandomAccessFile file)
Creates a new Lyrics3v1 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 |
getAlbumTitle()
|
java.lang.String |
getAuthorComposer()
|
java.lang.String |
getIdentifier()
ID string that usually corresponds to the class name, but can be displayed to the user. |
java.lang.String |
getLeadArtist()
|
java.lang.String |
getLyric()
|
int |
getSize()
|
java.lang.String |
getSongComment()
|
java.lang.String |
getSongGenre()
|
java.lang.String |
getSongLyric()
|
java.lang.String |
getSongTitle()
|
java.lang.String |
getTrackNumberOnAlbum()
|
java.lang.String |
getYearReleased()
|
boolean |
isSubsetOf(java.lang.Object object)
Returns true if this object is a subset of the argument. |
java.util.Iterator |
iterator()
|
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 |
setAlbumTitle(java.lang.String albumTitle)
|
void |
setAuthorComposer(java.lang.String authorComposer)
|
void |
setLeadArtist(java.lang.String leadArtist)
|
void |
setLyric(java.lang.String lyric)
|
void |
setSongComment(java.lang.String songComment)
|
void |
setSongGenre(java.lang.String songGenre)
|
void |
setSongLyric(java.lang.String songLyrics)
|
void |
setSongTitle(java.lang.String songTitle)
|
void |
setTrackNumberOnAlbum(java.lang.String trackNumberOnAlbum)
|
void |
setYearReleased(java.lang.String yearReleased)
|
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.lyrics3.AbstractLyrics3 |
append, delete, overwrite |
Methods inherited from class org.farng.mp3.AbstractMP3Tag |
isSubsetOf |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public Lyrics3v1()
public Lyrics3v1(Lyrics3v1 copyObject)
public Lyrics3v1(AbstractMP3Tag mp3Tag)
public Lyrics3v1(java.io.RandomAccessFile file) throws TagNotFoundException, java.io.IOException
Method Detail |
public java.lang.String getIdentifier()
AbstractMP3FileItem
getIdentifier
in class AbstractMP3FileItem
public void setLyric(java.lang.String lyric)
public java.lang.String getLyric()
public int getSize()
getSize
in class AbstractMP3FileItem
public boolean isSubsetOf(java.lang.Object object)
AbstractMP3FileItem
isSubsetOf
in class AbstractMP3FileItem
object
- object to determine subset of
public void append(AbstractMP3Tag tag)
AbstractMP3Tag
append
in class AbstractMP3Tag
tag
- tag to overwritepublic boolean equals(java.lang.Object obj)
AbstractMP3Tag
super.equals(object)
.
equals
in class AbstractMP3Tag
public java.util.Iterator iterator()
iterator
in class AbstractMP3Tag
public void overwrite(AbstractMP3Tag tag)
AbstractMP3Tag
overwrite
in class AbstractMP3Tag
tag
- tag to overwritepublic void read(java.io.RandomAccessFile file) throws TagNotFoundException, java.io.IOException
AbstractMP3FileItem
read
in class AbstractMP3FileItem
file
- file to read from
java.io.IOException
- on any I/O error
TagNotFoundException
public boolean seek(java.io.RandomAccessFile file) throws java.io.IOException
AbstractMP3Tag
seek
in class AbstractMP3Tag
file
- MP3 file to overwrite
java.io.IOException
- on any I/O errorpublic java.lang.String toString()
public void write(AbstractMP3Tag tag)
AbstractMP3Tag
write
in class AbstractMP3Tag
tag
- tag to write topublic void write(java.io.RandomAccessFile file) throws java.io.IOException
AbstractMP3FileItem
write
in class AbstractMP3FileItem
file
- file to write to
java.io.IOException
- on any I/O errorpublic java.lang.String getSongTitle()
getSongTitle
in class AbstractMP3Tag
public java.lang.String getLeadArtist()
getLeadArtist
in class AbstractMP3Tag
public java.lang.String getAlbumTitle()
getAlbumTitle
in class AbstractMP3Tag
public java.lang.String getYearReleased()
getYearReleased
in class AbstractMP3Tag
public java.lang.String getSongComment()
getSongComment
in class AbstractMP3Tag
public java.lang.String getSongGenre()
getSongGenre
in class AbstractMP3Tag
public java.lang.String getTrackNumberOnAlbum()
getTrackNumberOnAlbum
in class AbstractMP3Tag
public java.lang.String getSongLyric()
getSongLyric
in class AbstractMP3Tag
public java.lang.String getAuthorComposer()
getAuthorComposer
in class AbstractMP3Tag
public void setSongTitle(java.lang.String songTitle)
setSongTitle
in class AbstractMP3Tag
public void setLeadArtist(java.lang.String leadArtist)
setLeadArtist
in class AbstractMP3Tag
public void setAlbumTitle(java.lang.String albumTitle)
setAlbumTitle
in class AbstractMP3Tag
public void setYearReleased(java.lang.String yearReleased)
setYearReleased
in class AbstractMP3Tag
public void setSongComment(java.lang.String songComment)
setSongComment
in class AbstractMP3Tag
public void setSongGenre(java.lang.String songGenre)
setSongGenre
in class AbstractMP3Tag
public void setTrackNumberOnAlbum(java.lang.String trackNumberOnAlbum)
setTrackNumberOnAlbum
in class AbstractMP3Tag
public void setSongLyric(java.lang.String songLyrics)
setSongLyric
in class AbstractMP3Tag
public void setAuthorComposer(java.lang.String authorComposer)
setAuthorComposer
in class AbstractMP3Tag
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |