Class DataReferenceBox

All Implemented Interfaces:
Box, Container, FullBox, ParsableBox

public class DataReferenceBox extends AbstractContainerBox implements FullBox

4cc = ""dref""

The data reference object contains a table of data references (normally URLs) that declare the location(s) of the media data used within the presentation. The data reference index in the sample description ties entries in this table to the samples in the track. A track may be split over several sources in this way. If the flag is set indicating that the data is in the same file as this box, then no string (not even an empty one) shall be supplied in the entry field. The DataEntryBox within the DataReferenceBox shall be either a DataEntryUrnBox or a DataEntryUrlBox.
See Also:
  • Field Details

  • Constructor Details

    • DataReferenceBox

      public DataReferenceBox()
  • Method Details

    • getVersion

      public int getVersion()
      Specified by:
      getVersion in interface FullBox
    • setVersion

      public void setVersion(int version)
      Specified by:
      setVersion in interface FullBox
    • getFlags

      public int getFlags()
      Specified by:
      getFlags in interface FullBox
    • setFlags

      public void setFlags(int flags)
      Specified by:
      setFlags in interface FullBox
    • parse

      public void parse(ReadableByteChannel dataSource, ByteBuffer header, long contentSize, BoxParser boxParser) throws IOException
      Description copied from interface: ParsableBox
      Parses the box excluding the already parsed header (size, 4cc, [long-size], [user-type]). The remaining size of the box is the contentSize, contentSize number of bytes should be read from the box source (readableByteChannel). If you need the header buffer at a later stage you have to create a copy.
      Specified by:
      parse in interface ParsableBox
      Overrides:
      parse in class AbstractContainerBox
      Parameters:
      dataSource - the source for this box
      header - the box' already parsed header (create copy if you need it later as it will be overwritten)
      contentSize - remaining bytes of this box
      boxParser - use it to parse sub-boxes.
      Throws:
      IOException - in case of an error during a read operation
    • getBox

      public void getBox(WritableByteChannel writableByteChannel) throws IOException
      Description copied from interface: Box
      Writes the complete box - size | 4-cc | content - to the given writableByteChannel.
      Specified by:
      getBox in interface Box
      Overrides:
      getBox in class AbstractContainerBox
      Parameters:
      writableByteChannel - the box's sink
      Throws:
      IOException - in case of problems with the Channel
    • getSize

      public long getSize()
      Specified by:
      getSize in interface Box
      Overrides:
      getSize in class AbstractContainerBox