|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jaudiotagger.tag.id3.AbstractTagItem org.jaudiotagger.tag.id3.AbstractTagFrameBody org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody org.jaudiotagger.tag.id3.framebody.FrameBodySYTC
public class FrameBodySYTC
Synchronised tempo codes frame.
For a more accurate description of the tempo of a musical piece this frame might be used. After the header follows one byte describing which time stamp format should be used. Then follows one or more tempo codes. Each tempo code consists of one tempo part and one time part. The tempo is in BPM described with one or two bytes. If the first byte has the value $FF, one more byte follows, which is added to the first giving a range from 2 - 510 BPM, since $00 and $01 is reserved. $00 is used to describe a beat-free time period, which is not the same as a music-free time period. $01 is used to indicate one single beat-stroke followed by a beat-free period.The tempo descriptor is followed by a time stamp. Every time the tempo in the music changes, a tempo descriptor may indicate this for the player. All tempo descriptors should be sorted in chronological order. The first beat-stroke in a time-period is at the same time as the beat description occurs. There may only be one "SYTC" frame in each tag.
<Header for 'Synchronised tempo codes', ID: "SYTC"> | |
Time stamp format | $xx |
Tempo data | <binary data> |
Where time stamp format is:
$01 Absolute time, 32 bit sized, using MPEG frames as unit
$02 Absolute time, 32 bit sized, using milliseconds as unit
Abolute time means that every stamp contains the time from the beginning of the file.
For more details, please refer to the ID3 specifications:
Field Summary |
---|
Fields inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody |
---|
TYPE_BODY |
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody |
---|
objectList |
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagItem |
---|
logger |
Constructor Summary | |
---|---|
FrameBodySYTC()
Creates a new FrameBodySYTC datatype. |
|
FrameBodySYTC(java.nio.ByteBuffer byteBuffer,
int frameSize)
Creates a new FrameBody from buffer |
|
FrameBodySYTC(FrameBodySYTC body)
Copy constructor |
|
FrameBodySYTC(int timeStampFormat,
byte[] tempo)
|
Method Summary | |
---|---|
java.lang.String |
getIdentifier()
The ID3v2 frame identifier |
protected void |
setupObjectList()
Create the list of Datatypes that this body expects in the correct order This method needs to be implemented by concrete subclasses |
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody |
---|
createStructure, equals, getSize, read, setSize, setSize, write |
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 |
Constructor Detail |
---|
public FrameBodySYTC()
public FrameBodySYTC(int timeStampFormat, byte[] tempo)
timeStampFormat
- tempo
- public FrameBodySYTC(java.nio.ByteBuffer byteBuffer, int frameSize) throws InvalidTagException
byteBuffer
- frameSize
-
InvalidTagException
public FrameBodySYTC(FrameBodySYTC body)
body
- Method Detail |
---|
public java.lang.String getIdentifier()
getIdentifier
in class AbstractID3v2FrameBody
protected void setupObjectList()
AbstractTagFrameBody
setupObjectList
in class AbstractTagFrameBody
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |