Recently, #55 added a better parsing of v4l2-ctl's output on Linux machines for the CameraGstreamer Camera object. In particular, it allowed to automatically add to the configuration window all the parameters listed by v4l2-ctl, with a correct handling of their type, value, limits, etc.
As CameraOpencv also relies on v4l2-ctl for determining the available settings of the driven camera on Linux machines, a similar improvement should be brought to this second class. The possibility to tune the settings directly with v4l2-ctl instead of OpenCV should be explored.
In case CameraGstreamer and CameraOpencv would end up being extremely similar on Linux machines, having them both derived from a common parent class would be nice.
On Windows and macOS, the CameraGstreamer and CameraOpencv will likely remain very limited, unless we find an equivalent to v4l2-ctl.
This issue contains #17.
ToDo
[x] Split the CameraOpencv class in two, one class for Linux using v4l2-ctl and the other for other situations
[x] In the class that uses v4l2-ctl, apply the same parsing as in CameraGstreamer
[x] If possible, use v4l2-ctl directly for tuning settings instead of relying on OpenCV
[x] If applicable, create a parent class for both CameraGstreamer and CameraOpencv that handles parsing of v4l2-ctl
Recently, #55 added a better parsing of
v4l2-ctl
's output on Linux machines for theCameraGstreamer
Camera object. In particular, it allowed to automatically add to the configuration window all the parameters listed byv4l2-ctl
, with a correct handling of their type, value, limits, etc.As
CameraOpencv
also relies onv4l2-ctl
for determining the available settings of the driven camera on Linux machines, a similar improvement should be brought to this second class. The possibility to tune the settings directly withv4l2-ctl
instead of OpenCV should be explored.In case
CameraGstreamer
andCameraOpencv
would end up being extremely similar on Linux machines, having them both derived from a common parent class would be nice. On Windows and macOS, theCameraGstreamer
andCameraOpencv
will likely remain very limited, unless we find an equivalent tov4l2-ctl
.This issue contains #17.
ToDo
CameraOpencv
class in two, one class for Linux usingv4l2-ctl
and the other for other situationsv4l2-ctl
, apply the same parsing as inCameraGstreamer
v4l2-ctl
directly for tuning settings instead of relying on OpenCVCameraGstreamer
andCameraOpencv
that handles parsing ofv4l2-ctl