Copyright 2012-04-26 Werner Randelshofer

org.monte.media.quicktime
Class AbstractQuickTimeStream.AudioTrack

java.lang.Object
  extended by org.monte.media.quicktime.AbstractQuickTimeStream.Track
      extended by org.monte.media.quicktime.AbstractQuickTimeStream.AudioTrack
Enclosing class:
AbstractQuickTimeStream

protected class AbstractQuickTimeStream.AudioTrack
extends AbstractQuickTimeStream.Track


Field Summary
protected  int soundBytesPerFrame
          The number of bytes in a frame: for uncompressed audio, an uncompressed frame; for compressed audio, a compressed frame.
protected  int soundBytesPerPacket
          For uncompressed audio, the number of bytes in a sample for a single channel.
protected  int soundBytesPerSample
          The size of an uncompressed sample in bytes.
protected  int soundCompressionId
          Sound compressionId.
protected  int soundNumberOfChannels
          Number of sound channels used by the sound sample.
protected  double soundSampleRate
          Sound sample rate.
protected  int soundSampleSize
          Number of bits per audio sample before compression.
protected  long soundSamplesPerPacket
          Sound stsd samples per packet.
protected  byte[] stsdExtensions
          Extensions to the stsd chunk.
 
Fields inherited from class org.monte.media.quicktime.AbstractQuickTimeStream.Track
chunks, codec, editList, format, height, inputBuffer, inputTime, matrix, mediaCompressionType, mediaCompressorName, mediaDuration, mediaTimeScale, mediaType, outputBuffer, sampleCount, sampleSizes, syncInterval, syncSamples, timeToSamples, width, writeTime
 
Constructor Summary
AbstractQuickTimeStream.AudioTrack()
           
 
Method Summary
protected  void writeMediaInformationHeaderAtom(AbstractQuickTimeStream.CompositeAtom minfAtom)
           
protected  void writeSampleDescriptionAtom(AbstractQuickTimeStream.CompositeAtom stblAtom)
           
 
Methods inherited from class org.monte.media.quicktime.AbstractQuickTimeStream.Track
addChunk, addSample, getSampleCount, getTrackDuration, isEmpty, writeMediaInformationAtoms, writeSampleTableAtoms, writeTrackAtoms
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

soundNumberOfChannels

protected int soundNumberOfChannels
Number of sound channels used by the sound sample.


soundSampleSize

protected int soundSampleSize
Number of bits per audio sample before compression.


soundCompressionId

protected int soundCompressionId
Sound compressionId. The value -1 means fixed bit rate, -2 means varable bit rate.


soundSamplesPerPacket

protected long soundSamplesPerPacket
Sound stsd samples per packet. The number of uncompressed samples generated by a compressed sample (an uncompressed sample is one sample from each channel). This is also the sample duration, expressed in the media’s timescale, where the timescale is equal to the sample rate. For uncompressed formats, this field is always 1.


soundBytesPerPacket

protected int soundBytesPerPacket
For uncompressed audio, the number of bytes in a sample for a single channel. This replaces the older sampleSize field, which is set to 16. This value is calculated by dividing the frame size by the number of channels. The same calculation is performed to calculate the value of this field for compressed audio, but the result of the calculation is not generally meaningful for compressed audio.


soundBytesPerFrame

protected int soundBytesPerFrame
The number of bytes in a frame: for uncompressed audio, an uncompressed frame; for compressed audio, a compressed frame. This can be calculated by multiplying the bytes per packet field by the number of channels.


soundBytesPerSample

protected int soundBytesPerSample
The size of an uncompressed sample in bytes. This is set to 1 for 8-bit audio, 2 for all other cases, even if the sample size is greater than 2 bytes.


soundSampleRate

protected double soundSampleRate
Sound sample rate. The integer portion must match the media's time scale.


stsdExtensions

protected byte[] stsdExtensions
Extensions to the stsd chunk. Must contain atom-based fields: ([long size, long type, some data], repeat)

Constructor Detail

AbstractQuickTimeStream.AudioTrack

public AbstractQuickTimeStream.AudioTrack()
Method Detail

writeMediaInformationHeaderAtom

protected void writeMediaInformationHeaderAtom(AbstractQuickTimeStream.CompositeAtom minfAtom)
                                        throws java.io.IOException
Specified by:
writeMediaInformationHeaderAtom in class AbstractQuickTimeStream.Track
Throws:
java.io.IOException

writeSampleDescriptionAtom

protected void writeSampleDescriptionAtom(AbstractQuickTimeStream.CompositeAtom stblAtom)
                                   throws java.io.IOException
Specified by:
writeSampleDescriptionAtom in class AbstractQuickTimeStream.Track
Throws:
java.io.IOException

Copyright 2012-04-26 Werner Randelshofer