Class VP8Frame


  • public final class VP8Frame
    extends java.lang.Object
    • Field Detail

      • listener

        private javax.imageio.event.IIOReadProgressListener listener
      • coefProbs

        private final int[][][][] coefProbs
      • filterLevel

        private int filterLevel
      • frame

        private final javax.imageio.stream.ImageInputStream frame
      • debug

        private final boolean debug
      • frameType

        private int frameType
      • height

        private int height
      • macroBlockCols

        private int macroBlockCols
      • macroBlockNoCoeffSkip

        private int macroBlockNoCoeffSkip
      • macroBlockRows

        private int macroBlockRows
      • macroBlockSegementAbsoluteDelta

        private int macroBlockSegementAbsoluteDelta
      • macroBlockSegmentTreeProbs

        private int[] macroBlockSegmentTreeProbs
      • modeLoopFilterDeltas

        private final int[] modeLoopFilterDeltas
      • modeRefLoopFilterDeltaEnabled

        private int modeRefLoopFilterDeltaEnabled
      • modeRefLoopFilterDeltaUpdate

        private int modeRefLoopFilterDeltaUpdate
      • multiTokenPartition

        private int multiTokenPartition
      • offset

        private long offset
      • refLoopFilterDeltas

        private final int[] refLoopFilterDeltas
      • refreshEntropyProbs

        private int refreshEntropyProbs
      • refreshLastFrame

        private int refreshLastFrame
      • segmentationIsEnabled

        private int segmentationIsEnabled
      • sharpnessLevel

        private int sharpnessLevel
      • simpleFilter

        private boolean simpleFilter
      • tokenBoolDecoder

        private BoolDecoder tokenBoolDecoder
      • tokenBoolDecoders

        private final java.util.List<BoolDecoder> tokenBoolDecoders
      • updateMacroBlockSegmentationMap

        private int updateMacroBlockSegmentationMap
      • updateMacroBlockSegmentatonData

        private int updateMacroBlockSegmentatonData
      • width

        private int width
      • yuv

        private final byte[] yuv
      • rgb

        private final byte[] rgb
    • Constructor Detail

      • VP8Frame

        public VP8Frame​(javax.imageio.stream.ImageInputStream stream,
                        boolean debug)
                 throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • setProgressListener

        public void setProgressListener​(javax.imageio.event.IIOReadProgressListener listener)
      • createMacroBlocks

        private void createMacroBlocks()
      • decode

        public boolean decode​(java.awt.image.WritableRaster raster,
                              javax.imageio.ImageReadParam param)
                       throws java.io.IOException
        Throws:
        java.io.IOException
      • decodeMacroBlockRow

        private void decodeMacroBlockRow​(int mbRow,
                                         java.awt.image.WritableRaster raster,
                                         java.awt.Rectangle region,
                                         int xSubsampling,
                                         int ySubsampling)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • fireProgressUpdate

        private void fireProgressUpdate​(int mbRow)
      • getBitAsInt

        private int getBitAsInt​(int data,
                                int bit)
      • getCoefProbs

        int[][][][] getCoefProbs()
      • getDebugImageDiff

        public java.awt.image.BufferedImage getDebugImageDiff()
      • getDebugImagePredict

        public java.awt.image.BufferedImage getDebugImagePredict()
      • getDebugImageUBuffer

        public java.awt.image.BufferedImage getDebugImageUBuffer()
      • getDebugImageUDiffBuffer

        public java.awt.image.BufferedImage getDebugImageUDiffBuffer()
      • getDebugImageUPredBuffer

        public java.awt.image.BufferedImage getDebugImageUPredBuffer()
      • getDebugImageVBuffer

        public java.awt.image.BufferedImage getDebugImageVBuffer()
      • getDebugImageVDiffBuffer

        public java.awt.image.BufferedImage getDebugImageVDiffBuffer()
      • getDebugImageVPredBuffer

        public java.awt.image.BufferedImage getDebugImageVPredBuffer()
      • getDebugImageYBuffer

        public java.awt.image.BufferedImage getDebugImageYBuffer()
      • getDebugImageYDiffBuffer

        public java.awt.image.BufferedImage getDebugImageYDiffBuffer()
      • getDebugImageYPredBuffer

        public java.awt.image.BufferedImage getDebugImageYPredBuffer()
      • getFrameType

        public int getFrameType()
      • getWidth

        public int getWidth()
      • getHeight

        public int getHeight()
      • getMacroBlock

        public MacroBlock getMacroBlock​(int mbCol,
                                        int mbRow)
      • getMacroBlockCols

        public int getMacroBlockCols()
      • getMacroBlockDebugString

        public java.lang.String getMacroBlockDebugString​(int mbx,
                                                         int mby,
                                                         int sbx,
                                                         int sby)
      • getMacroBlockRows

        public int getMacroBlockRows()
      • getQIndex

        public int getQIndex()
      • getSharpnessLevel

        public int getSharpnessLevel()
      • getTokenBoolDecoder

        public BoolDecoder getTokenBoolDecoder()
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • readModes

        private void readModes​(BoolDecoder bc)
                        throws java.io.IOException
        Throws:
        java.io.IOException
      • readPartitionSize

        private int readPartitionSize​(long l)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • readSubBlockMode

        private int readSubBlockMode​(BoolDecoder bc,
                                     int A,
                                     int L)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • readUvMode

        private int readUvMode​(BoolDecoder bc)
                        throws java.io.IOException
        Throws:
        java.io.IOException
      • readYMode

        private int readYMode​(BoolDecoder bc)
                       throws java.io.IOException
        Throws:
        java.io.IOException
      • setupTokenDecoder

        private void setupTokenDecoder​(BoolDecoder bc,
                                       int first_partition_length_in_bytes,
                                       long offset)
                                throws java.io.IOException
        Throws:
        java.io.IOException
      • copyBlock

        private void copyBlock​(MacroBlock macroBlock,
                               java.awt.image.WritableRaster byteRGBRaster,
                               java.awt.Rectangle region,
                               int xSubsampling,
                               int ySubsampling)