Class Frame

java.lang.Object
org.bytedeco.copiedstuff.Frame
All Implemented Interfaces:
org.bytedeco.javacpp.indexer.Indexable

public class Frame
extends Object
implements org.bytedeco.javacpp.indexer.Indexable
A class to manage the data of audio and video frames. It it used by CanvasFrame, FrameGrabber, FrameRecorder, and their subclasses. We can also make the link with other APIs, such as Android, Java 2D, FFmpeg, and OpenCV, via a FrameConverter.
  • Field Details

    • keyFrame

      public boolean keyFrame
      A flag set by a FrameGrabber or a FrameRecorder to indicate a key frame.
    • DEPTH_BYTE

      public static final int DEPTH_BYTE
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_UBYTE

      public static final int DEPTH_UBYTE
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_SHORT

      public static final int DEPTH_SHORT
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_USHORT

      public static final int DEPTH_USHORT
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_INT

      public static final int DEPTH_INT
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_LONG

      public static final int DEPTH_LONG
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_FLOAT

      public static final int DEPTH_FLOAT
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • DEPTH_DOUBLE

      public static final int DEPTH_DOUBLE
      Constants to be used for imageDepth.
      See Also:
      Constant Field Values
    • imageWidth

      public int imageWidth
      Information associated with the image field.
    • imageHeight

      public int imageHeight
      Information associated with the image field.
    • imageDepth

      public int imageDepth
      Information associated with the image field.
    • imageChannels

      public int imageChannels
      Information associated with the image field.
    • imageStride

      public int imageStride
      Information associated with the image field.
    • image

      public Buffer[] image
      Buffers to hold image pixels from multiple channels for a video frame. Most of the software supports packed data only, but an array is provided to allow users to store images in a planar format as well.
    • sampleRate

      public int sampleRate
      Information associated with the samples field.
    • audioChannels

      public int audioChannels
      Information associated with the samples field.
    • samples

      public Buffer[] samples
      Buffers to hold audio samples from multiple channels for an audio frame.
    • opaque

      public Object opaque
      The underlying data object, for example, AVFrame, IplImage, or Mat.
    • timestamp

      public long timestamp
      Timestamp of the frame creation.
  • Constructor Details

    • Frame

      public Frame()
      Empty constructor.
    • Frame

      public Frame​(int width, int height, int depth, int channels)
      Allocates a new packed image frame in native memory where rows are 8-byte aligned.
  • Method Details

    • createIndexer

      public <I extends org.bytedeco.javacpp.indexer.Indexer> I createIndexer()
      Returns createIndexer(true, 0).
    • createIndexer

      public <I extends org.bytedeco.javacpp.indexer.Indexer> I createIndexer​(boolean direct)
      Specified by:
      createIndexer in interface org.bytedeco.javacpp.indexer.Indexable
    • createIndexer

      public <I extends org.bytedeco.javacpp.indexer.Indexer> I createIndexer​(boolean direct, int i)
      Returns an Indexer for the ith image plane.
    • clone

      public Frame clone()
      Care must be taken if this method is to be used in conjunction with movie recordings. Cloning a frame containing a full HD picture (alpha channel included) would take 1920 x 1080 * 4 = 8.294.400 Bytes. Expect a heap overflow exception when using this method without cleaning up.
      Overrides:
      clone in class Object
      Returns:
      A deep copy of this frame.