Identify last version of openCV with legacy API support

I realize that this board is mostly for people with image recognition expertise who use OpenCV on the developer level. However, I’m creating this topic as a user, not a developer.

There is a program called eviacam (GitHub - cmauri/eviacam: webcam based mouse emulator) that uses OpenCV to implement a head movement mouse. This is useful for people who are disabled and unable to use a normal mouse.

Since eviacam is in the Ubuntu universe repository, it is easily accessible to users.

On Ubuntu 19.10 (now deprecated), eviacam worked.
On Ubuntu 20.04, which is a long-term support version, eviacam fails with

WARN:0] global /var/tmp/portage/media-libs/opencv-4.1.2-r1/work/opencv-4.1.2/modules/videoio/src/videoio_c.cpp (15) cvCreateCameraCapture cvCreateCameraCapture doesn’t support legacy API anymore.

This has been listed as an eviacam issue report for more than two years. Therefore, I do not think that the developer of eviacam is going to fix it.

After looking at the issue reports and help requests spread across the internet, I think that a great many people would be helped if someone could identify the last version of OpenCV that supports the legacy API.

Ubuntu’s requirement for eviacam could then be rolled back to this version and a lot of people whose expertise does not extend to compiling and testing different versions of various libraries could be helped.

git blame: opencv/modules/videoio/src/videoio_c.cpp at 9238316cf1fd0b87bf80fb2f873de85b9ffe2af2 · opencv/opencv · GitHub

the commit: Framework for dynamic videoio backends, FFmpeg and GStreamer plugins · opencv/opencv@9702987 · GitHub

so the version would have to be something before 4.1.0

or someone forks that project and fixes it. the C API has been deprecated for several years now. we’re at 4.x and before a graduation to 5.x. v2.0 was released in 2009, which is when the C++ API was introduced.