com.coremedia.iso.boxes
Class CompositionTimeToSample
java.lang.Object
com.googlecode.mp4parser.AbstractBox
com.googlecode.mp4parser.AbstractFullBox
com.coremedia.iso.boxes.CompositionTimeToSample
- All Implemented Interfaces:
- Box, FullBox
public class CompositionTimeToSample
- extends AbstractFullBox
aligned(8) class CompositionOffsetBox
extends FullBox(‘ctts’, version = 0, 0) {
unsigned int(32) entry_count;
int i;
if (version==0) {
for (i=0; i < entry_count; i++) {
unsigned int(32) sample_count;
unsigned int(32) sample_offset;
}
}
else if (version == 1) {
for (i=0; i < entry_count; i++) {
unsigned int(32) sample_count;
signed int(32) sample_offset;
}
}
}
This box provides the offset between decoding time and composition time.
In version 0 of this box the decoding time must be less than the composition time, and
the offsets are expressed as unsigned numbers such that
CT(n) = DT(n) + CTTS(n) where CTTS(n) is the (uncompressed) table entry for sample n.
In version 1 of this box, the composition timeline and the decoding timeline are
still derived from each other, but the offsets are signed.
It is recommended that for the computed composition timestamps, there is
exactly one with the value 0 (zero).
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TYPE
public static final String TYPE
- See Also:
- Constant Field Values
CompositionTimeToSample
public CompositionTimeToSample()
getContentSize
protected long getContentSize()
- Description copied from class:
AbstractBox
- Get the box's content size without its header. This must be the exact number of bytes
that
getContent(ByteBuffer)
writes.
- Specified by:
getContentSize
in class AbstractBox
- Returns:
- Gets the box's content size in bytes
- See Also:
AbstractBox.getContent(java.nio.ByteBuffer)
getEntries
public List<CompositionTimeToSample.Entry> getEntries()
setEntries
public void setEntries(List<CompositionTimeToSample.Entry> entries)
_parseDetails
public void _parseDetails(ByteBuffer content)
- Description copied from class:
AbstractBox
- Parse the box's fields and child boxes if any.
- Specified by:
_parseDetails
in class AbstractBox
- Parameters:
content
- the box's raw content beginning after the 4-cc field.
getContent
protected void getContent(ByteBuffer byteBuffer)
- Description copied from class:
AbstractBox
- Write the box's content into the given
ByteBuffer
. This must include flags
and version in case of a full box. byteBuffer
has been initialized with
getSize()
bytes.
- Specified by:
getContent
in class AbstractBox
- Parameters:
byteBuffer
- the sink for the box's content
blowupCompositionTimes
public static int[] blowupCompositionTimes(List<CompositionTimeToSample.Entry> entries)
- Decompresses the list of entries and returns the list of composition times.
- Returns:
- decoding time per sample
Copyright © 2012. All Rights Reserved.