org.jaudiotagger.tag.id3.framebody
Class FrameBodyMLLT
java.lang.Object
org.jaudiotagger.tag.id3.AbstractTagItem
org.jaudiotagger.tag.id3.AbstractTagFrameBody
org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody
org.jaudiotagger.tag.id3.framebody.FrameBodyMLLT
- All Implemented Interfaces:
- ID3v23FrameBody, ID3v24FrameBody
public class FrameBodyMLLT
- extends AbstractID3v2FrameBody
- implements ID3v24FrameBody, ID3v23FrameBody
MPEG location lookup table frame.
To increase performance and accuracy of jumps within a MPEG
audio file, frames with timecodes in different locations in the file
might be useful. The ID3v2 frame includes references that the
software can use to calculate positions in the file. After the frame
header is a descriptor of how much the 'frame counter' should
increase for every reference. If this value is two then the first
reference points out the second frame, the 2nd reference the 4th
frame, the 3rd reference the 6th frame etc. In a similar way the
'bytes between reference' and 'milliseconds between reference' points
out bytes and milliseconds respectively.
Each reference consists of two parts; a certain number of bits, as
defined in 'bits for bytes deviation', that describes the difference
between what is said in 'bytes between reference' and the reality and
a certain number of bits, as defined in 'bits for milliseconds
deviation', that describes the difference between what is said in
'milliseconds between reference' and the reality. The number of bits
in every reference, i.e. 'bits for bytes deviation'+'bits for
milliseconds deviation', must be a multiple of four. There may only
be one "MLLT" frame in each tag.
<Header for 'Location lookup table', ID: "MLLT"> |
MPEG frames between reference | $xx xx |
Bytes between reference | $xx xx xx |
Milliseconds between reference | $xx xx xx |
Bits for bytes deviation | $xx |
Bits for milliseconds dev. | $xx |
Then for every reference the following data is included;
Deviation in bytes | %xxx.... |
Deviation in milliseconds | %xxx.... |
For more details, please refer to the ID3 specifications:
- Version:
- $Id: FrameBodyMLLT.java,v 1.10 2008/01/01 15:14:17 paultaylor Exp $
- Author:
- : Paul Taylor, : Eric Farng
Methods inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody |
getBriefDescription, getHeader, getLongDescription, getObject, getObjectValue, getTextEncoding, isSubsetOf, iterator, setHeader, setObjectValue, setTextEncoding, toString |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
FrameBodyMLLT
public FrameBodyMLLT()
- Creates a new FrameBodyMLLT datatype.
FrameBodyMLLT
public FrameBodyMLLT(FrameBodyMLLT body)
getIdentifier
public java.lang.String getIdentifier()
- The ID3v2 frame identifier
- Specified by:
getIdentifier
in class AbstractID3v2FrameBody
- Returns:
- the ID3v2 frame identifier for this frame type
setupObjectList
protected void setupObjectList()
- TODO:proper mapping
- Specified by:
setupObjectList
in class AbstractTagFrameBody