public class ID3v24FrameBodySynchronizedTempoCodes extends ID3v24FrameBody
![]() |
![]() |
A synchronized tempo codes frame body is associated with an ID3v2.4 SYTC frame which is used to specify tempo changes in the .mp3 song.
A tempo is specified as the metronome setting, ie, the number of beats per minute. Its range is from 2 - 510 bpm. The synchronized tempo codes frame body contains the following fields:
| Field | Description | |
|---|---|---|
| 1. | time stamp format | units of the time stamp field in the tempo changes. |
| 2. | tempoChanges | list of tempo changes within the .mp3 song. |
There may be only one synchronized tempo codes frame in an ID3v2.4 tag.
| Modifier and Type | Class and Description |
|---|---|
class |
ID3v24FrameBodySynchronizedTempoCodes.TempoChange
used to indicate a tempo change within an .mp3 song.
|
buffer, dirty, frameTypenextNullTerminatorIndex, nullTerminatorIndex| Constructor and Description |
|---|
ID3v24FrameBodySynchronizedTempoCodes()
The default constructor is called when creating a new frame.
|
ID3v24FrameBodySynchronizedTempoCodes(java.io.InputStream inputStream,
int frameBodySize)
This constructor is called when reading in an existing frame from an .mp3 file.
|
ID3v24FrameBodySynchronizedTempoCodes(TimeStampFormat timeStampFormat,
java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> tempoChanges)
This constructor is called when creating a new frame.
|
| Modifier and Type | Method and Description |
|---|---|
java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> |
getTempoChanges()
gets a list of the tempo changes that occur within the song.
|
TimeStampFormat |
getTimeStampFormat()
get the time stamp format.
|
void |
parse()
parses the raw bytes of the frame body and stores the parsed values in the frame's fields.
|
void |
setBuffer()
If the frame body's values have been modified, then resize the raw binary buffer and store the new values there.
|
void |
setTempoChanges(java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> tempoChanges)
sets the list of the tempo changes that occur within the song.
|
void |
setTimeStampFormat(TimeStampFormat timeStampFormat)
sets the time stamp format.
|
java.lang.String |
toString()
gets a string representation of the synchronized tempo codes frame body showing all of the frame's fields and their values.
|
getFrameType, getNextNullTerminator, getSize, isDirty, save, savegetNextNullTerminator, pricesToString, stringToBytesbytesToInt, bytesToInt, bytesToShort, bytesToShort, bytesToSynchsafeInt, bytesToSynchsafeShort, formateDate, hex, hex, hex, intToBytes, littleEndianBytesToInt, pad, shortToBytes, synchsafeIntToBytespublic ID3v24FrameBodySynchronizedTempoCodes()
public ID3v24FrameBodySynchronizedTempoCodes(TimeStampFormat timeStampFormat, java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> tempoChanges)
timeStampFormat - the units of the timestamps in the timestamp field of the tempo changes.tempoChanges - list of tempo changes within the .mp3 song.public ID3v24FrameBodySynchronizedTempoCodes(java.io.InputStream inputStream,
int frameBodySize)
throws java.io.IOException
inputStream - input stream pointing to a synchronized tempo codes frame body in the .mp3 file.frameBodySize - size (in bytes) of the frame's body.java.io.IOException - if there is an error while reading the frame body.public void parse()
throws java.lang.IllegalArgumentException
parse in class ID3v24FrameBodyjava.lang.IllegalArgumentException - if an invalid value is detected while parsing the frame body's raw bytes.public TimeStampFormat getTimeStampFormat()
setTimeStampFormat(TimeStampFormat)public void setTimeStampFormat(TimeStampFormat timeStampFormat)
timeStampFormat - the units of the time stamp.getTimeStampFormat()public java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> getTempoChanges()
setTempoChanges(List)public void setTempoChanges(java.util.List<ID3v24FrameBodySynchronizedTempoCodes.TempoChange> tempoChanges)
tempoChanges - a list of the tempo changes that occur within the song.getTempoChanges()public void setBuffer()
setBuffer in class ID3v24FrameBodypublic java.lang.String toString()
toString in class java.lang.Object