Age | Commit message (Collapse) | Author |
|
MJPEG is an extremely useful format given its compression allows
high framerates even over limited bandwith USB connections. Add
an MJPEG encoder class that converts YUV420 data into MJPEG data.
Where a libcamera-source does not support MJPEG natively, convert
YUV420 into MJPEG if the user tries to set MJPEG format.
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
|
|
Provide the integration of a libcamera source within uvc-gadget.
This adds C++ support to the project and adds libcamera as an
optional external dependency.
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
|
|
Some sources simply fill the buffers passed by the USB subsystem and
return them as quickly as possible. Particularly with compressed
formats operating at superspeed this rapidly results in unrealistic
frame rates.
Add infrastructure that allows us to define a specific
framerate and introduce blocking calls that constrain those sources
to the framerates expected by the host.
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
|
|
Provide infrastructure to be able to build the uvc-gadget library as a
shared object and an executable which links against this as a dependency
to implment the reference 'uvc-gadget' application.
All existing cmake infrastructure is removed. This removes custom glob
support that was previously used by an early development for Android,
which is expected to be re-added later when required.
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|