Class RateShareEntry

java.lang.Object
org.mp4parser.boxes.samplegrouping.GroupEntry
org.mp4parser.boxes.samplegrouping.RateShareEntry

public class RateShareEntry extends GroupEntry

4cc = ""rash""

Each sample of a track may be associated to (zero or) one of a number of sample group descriptions, each of which defines a record of rate-share information. Typically the same rate-share information applies to many consecutive samples and it may therefore be enough to define two or three sample group descriptions that can be used at different time intervals.

The grouping type 'rash' (short for rate share) is defined as the grouping criterion for rate share information. Zero or one sample-to-group box ('sbgp') for the grouping type 'rash' can be contained in the sample table box ('stbl') of a track. It shall reside in a hint track, if a hint track is used, otherwise in a media track.

Target rate share may be specified for several operation points that are defined in terms of the total available bitrate, i.e., the bitrate that should be shared. If only one operation point is defined, the target rate share applies to all available bitrates. If several operation points are defined, then each operation point specifies a target rate share. Target rate share values specified for the first and the last operation points also specify the target rate share values at lower and higher available bitrates, respectively. The target rate share between two operation points is specified to be in the range between the target rate shares of those operation points. One possibility is to estimate with linear interpolation.

  • Field Details

  • Constructor Details

    • RateShareEntry

      public RateShareEntry()
  • Method Details

    • getType

      public String getType()
      Specified by:
      getType in class GroupEntry
    • parse

      public void parse(ByteBuffer byteBuffer)
      Specified by:
      parse in class GroupEntry
    • get

      public ByteBuffer get()
      Specified by:
      get in class GroupEntry
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getOperationPointCut

      public short getOperationPointCut()
    • setOperationPointCut

      public void setOperationPointCut(short operationPointCut)
    • getTargetRateShare

      public short getTargetRateShare()
    • setTargetRateShare

      public void setTargetRateShare(short targetRateShare)
    • getEntries

      public List<RateShareEntry.Entry> getEntries()
    • setEntries

      public void setEntries(List<RateShareEntry.Entry> entries)
    • getMaximumBitrate

      public int getMaximumBitrate()
    • setMaximumBitrate

      public void setMaximumBitrate(int maximumBitrate)
    • getMinimumBitrate

      public int getMinimumBitrate()
    • setMinimumBitrate

      public void setMinimumBitrate(int minimumBitrate)
    • getDiscardPriority

      public short getDiscardPriority()
    • setDiscardPriority

      public void setDiscardPriority(short discardPriority)