Class RawSink

All Implemented Interfaces:
AutoCloseable

public class RawSink
extends ImageSink
A sink for user code to accept video frames as raw bytes.

This is a complex API, most cases should use CvSink.

  • Constructor Details

    • RawSink

      public RawSink​(String name)
      Create a sink for accepting raw images.

      grabFrame() must be called on the created sink to get each new image.

      Parameters:
      name - Source name (arbitrary unique identifier)
  • Method Details

    • grabFrame

      public long grabFrame​(RawFrame frame)
      Wait for the next frame and get the image. Times out (returning 0) after 0.225 seconds. The provided image will have three 8-bit channels stored in BGR order.
      Parameters:
      frame - The frame object in which to store the image.
      Returns:
      Frame time, or 0 on error (call getError() to obtain the error message); the frame time is in the same time base as wpi::Now(), and is in 1 us increments.
    • grabFrame

      public long grabFrame​(RawFrame frame, double timeout)
      Wait for the next frame and get the image. Times out (returning 0) after timeout seconds. The provided image will have three 8-bit channels stored in BGR order.
      Parameters:
      frame - The frame object in which to store the image.
      timeout - The frame timeout in seconds.
      Returns:
      Frame time, or 0 on error (call getError() to obtain the error message); the frame time is in the same time base as wpi::Now(), and is in 1 us increments.
    • grabFrameNoTimeout

      public long grabFrameNoTimeout​(RawFrame frame)
      Wait for the next frame and get the image. May block forever. The provided image will have three 8-bit channels stored in BGR order.
      Parameters:
      frame - The frame object in which to store the image.
      Returns:
      Frame time, or 0 on error (call getError() to obtain the error message); the frame time is in the same time base as wpi::Now(), and is in 1 us increments.