Class AbstractQuickTimeStream.Track

java.lang.Object
org.monte.media.quicktime.AbstractQuickTimeStream.Track
Direct Known Subclasses:
AbstractQuickTimeStream.AudioTrack, AbstractQuickTimeStream.VideoTrack
Enclosing class:
AbstractQuickTimeStream

protected abstract class AbstractQuickTimeStream.Track extends Object
Represents a track.
  • Field Details

    • mediaType

      protected final FormatKeys.MediaType mediaType
      The media type of the track.
    • format

      protected Format format
      The format of the media in the track.
    • mediaTimeScale

      protected long mediaTimeScale
      The timeScale of the media in the track. A time value that indicates the time scale for this media. That is, the number of time units that pass per second in its time coordinate system.
    • mediaCompressionType

      protected String mediaCompressionType
      The compression type of the media.
    • mediaCompressorName

      protected String mediaCompressorName
      The compressor name.
    • chunks

      List of chunks.
    • timeToSamples

      List of TimeToSample entries.
    • sampleSizes

      List of SampleSize entries.
    • syncSamples

      protected ArrayList<Long> syncSamples
      List of sync samples. This list is null as long as all samples in this track are sync samples.
    • sampleCount

      protected long sampleCount
      The number of samples in this track.
    • mediaDuration

      protected long mediaDuration
      The duration of the media in this track in media time units.
    • editList

      protected AbstractQuickTimeStream.Edit[] editList
      The edit list of the track.
    • syncInterval

      protected int syncInterval
      Interval between sync samples (keyframes). 0 = automatic. 1 = write all samples as sync samples. n = sync every n-th sample.
    • codec

      protected Codec codec
      The codec.
    • outputBuffer

      protected Buffer outputBuffer
    • inputBuffer

      protected Buffer inputBuffer
    • inputTime

      protected Rational inputTime
      Start time of the first buffer that was added to the track.
    • writeTime

      protected Rational writeTime
      Current write time.
    • matrix

      protected double[] matrix
      The transformation matrix of the track.
    • width

      protected double width
    • height

      protected double height
    • headerFlags

      protected int headerFlags
       // Enumeration for track header flags
       set {
       TrackEnable = 0x1, // enabled track
       TrackInMovie = 0x2, // track in playback
       TrackInPreview = 0x4, // track in preview
       TrackInPoster = 0x8 // track in poster
       } TrackHeaderFlags;
       
  • Constructor Details

  • Method Details

    • setEnabled

      public void setEnabled(boolean newValue)
    • isEnabled

      public boolean isEnabled()
    • setInMovie

      public void setInMovie(boolean newValue)
    • isInMovie

      public boolean isInMovie()
    • setInPreview

      public void setInPreview(boolean newValue)
    • isInPreview

      public boolean isInPreview()
    • setInPoster

      public void setInPoster(boolean newValue)
    • isInPoster

      public boolean isInPoster()
    • addSample

      public void addSample(AbstractQuickTimeStream.Sample sample, int sampleDescriptionId, boolean isSyncSample)
    • addChunk

      public void addChunk(AbstractQuickTimeStream.Chunk chunk, boolean isSyncSample)
    • isEmpty

      public boolean isEmpty()
    • getSampleCount

      public long getSampleCount()
    • getTrackDuration

      public long getTrackDuration(long movieTimeScale)
      Gets the track duration in the movie time scale.
      Parameters:
      movieTimeScale - The time scale of the movie.
    • getFirstSampleTime

      public int getFirstSampleTime(long movieTimeScale)
      Gets the time of the first sample in the movie time scale.
      Parameters:
      movieTimeScale - The time scale of the movie.
    • writeSampleDescriptionAtom

      protected abstract void writeSampleDescriptionAtom(AbstractQuickTimeStream.CompositeAtom stblAtom) throws IOException
      Throws:
      IOException