Hello I think, I am that user :)
TL; DR The reason of failure is the upgrade of ffmpeg to version 7.0. I
have created the fix for this issue on my qTox fork:
https://github.com/nickolay168/qTox/commit/d70e9a8d5daeae0f168a8d8640bb6e....
The main fix is in src/video/cameradevice.cpp file, where I am changing
the way how the list of devices is taken.
My fork also contains some stability fixes.
Longer explanation:
The official qTox version (
https://github.com/qTox/qTox) used to take
the list of devices by manually creating the AVFormatContext, which in
turn involved copying the structure of AVInputFormat's AVClass that
required allocation of private data for the specific AVClass, contained
in the iformat variable. The manual allocation required the size of this
class, however, the priv_data_size field of AVInputFormat was long
deprecated and finally removed in ffmpeg v. 7
Here is the commit in ffmpeg repository, which has broken qTox:
https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/b800327f4c7233d09baca...
and, specifically, the patch file to avformat.h, which used to define
priv_data_size:
https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/b800327f4c7233d09baca....
I am happy to help in deploying a new version of qTox; I can create a
release of my fork. In future I am planning to work on improving this
messenger.