Important: Please read the Qt Code of Conduct -

Get Camera's Resolutions

  • Hi guys !

    I have a camera conected and I want to get its available resolutions. I can already display stream, and play with camera parameters like contrast, gamma, saturation, exposition etc.

    I constructed a QCamera object like this :

    QCamera m_camera = new QCamera;

    Then i tried to do like this :

        QCameraImageCapture * imageCapture = new QCameraImageCapture(m_camera);
        QImageEncoderSettings imageSettings;
        imageSettings.setResolution(3584, 2752);
        QList<QSize> resolutions = imageCapture->supportedResolutions();
        std::cout << "Ready to use ? " << imageCapture->isAvailable() << std::endl;
        qDebug() << "Resolutions List : " << resolutions;

    The first line returns true, but the second returns an empty list.

    I have an empty list, moreover, when I verify, the resolution stay fixed to 896*688...

    Do someone have an idea for my problem please ?

    Have a nice day, you, who read my post ! :)

    EDIT : if I use qDebug() << imageSettings.resolution(), that returns Qlist<3584, 2752> which is what I entered, but not what is displayed.

  • I think this one may come in handy:
    As far as i understnad you have to call load() function to get acces to resolutions.

  • Hi @michelson ! Thanks for your answer!

    I saw this topic, but i though that my start() is similar to load(). I'll try the load() so.

  • Finally, that changed nothing... i still can't change my resolution...

  • Im sorry but I think its not your fault that the resolutions are not showing up on screen. Ive seen some more discutions about it and I guess someone has already reported this as a bug

    I guess your only option now is to either use camera API or try to apply resolution fixed by yourself (if possible).

  • Hi @michelson !

    Yes, i finally found this bug report too, but i forgot to post it yesterday. The table which Yoann Lopes gave (in your link) explains what is possible or not to do :

    Thanks for your help again ! I'll use my camera API then.

    Have a nice day !