~MJPEGEncoder();
void stop();
void upload_frame(int64_t pts, unsigned card_index, RefCountedFrame frame, const bmusb::VideoFormat &video_format, size_t y_offset, size_t cbcr_offset);
-
- // If the frame was started (data_copy != nullptr) but will not be finished
- // (MJPEG decoding was turned off in the meantime), you'll need to call finish_frame()
- // to release any VA-API resources.
- void finish_frame(RefCountedFrame frame);
-
bool using_vaapi() const { return va_dpy != nullptr; }
// Returns -1 for inactive (ie., don't encode frames for this card right now).
VASurfaceID surface;
VAContextID context;
VABufferID data_buffer;
+ VAImage image;
};
// RAII wrapper to release VAResources on return (even on error).