Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. QCamera Problems!
Forum Updated to NodeBB v4.3 + New Features

QCamera Problems!

Scheduled Pinned Locked Moved Unsolved General and Desktop
27 Posts 6 Posters 10.8k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #4

    You should check the QtMultimedia plugin with ldd to see if it finds the gstreamer libraries. It might be still using the 0.1 version.

    Interested in AI ? www.idiap.ch
    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

    Hasan VaezH 2 Replies Last reply
    0
    • SGaistS SGaist

      You should check the QtMultimedia plugin with ldd to see if it finds the gstreamer libraries. It might be still using the 0.1 version.

      Hasan VaezH Offline
      Hasan VaezH Offline
      Hasan Vaez
      wrote on last edited by
      #5

      @SGaist said in QCamera Problems!:

      check the QtMultimedia plugin with ldd

      Thank you SGaist, there is no EXEC file in gstreamer plugin folder. With ldd we can just check exec dependency Libs.
      Would you please tell me how to check Lib dependency of Qt Plugins?

      jsulmJ 1 Reply Last reply
      0
      • SGaistS SGaist

        You should check the QtMultimedia plugin with ldd to see if it finds the gstreamer libraries. It might be still using the 0.1 version.

        Hasan VaezH Offline
        Hasan VaezH Offline
        Hasan Vaez
        wrote on last edited by
        #6

        @SGaist said in QCamera Problems!:

        QtMultimedia

        0_1521769297493_Screen Shot 2018-03-23 at 6.10.17 AM.png

        1 Reply Last reply
        0
        • Hasan VaezH Hasan Vaez

          @SGaist said in QCamera Problems!:

          check the QtMultimedia plugin with ldd

          Thank you SGaist, there is no EXEC file in gstreamer plugin folder. With ldd we can just check exec dependency Libs.
          Would you please tell me how to check Lib dependency of Qt Plugins?

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on last edited by
          #7

          @Hasan-Vaez said in QCamera Problems!:

          With ldd we can just check exec dependency Libs.

          This is wrong. ldd works with libs as well

          https://forum.qt.io/topic/113070/qt-code-of-conduct

          Hasan VaezH 1 Reply Last reply
          2
          • SGaistS Offline
            SGaistS Offline
            SGaist
            Lifetime Qt Champion
            wrote on last edited by
            #8

            You are mixing your distribution provided Qt with the one you installed through the online installer. They are two different versions of Qt hence my question about the libraries linked to your 5.10 version of the gstreamer plugin.

            Interested in AI ? www.idiap.ch
            Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

            Hasan VaezH 2 Replies Last reply
            1
            • jsulmJ jsulm

              @Hasan-Vaez said in QCamera Problems!:

              With ldd we can just check exec dependency Libs.

              This is wrong. ldd works with libs as well

              Hasan VaezH Offline
              Hasan VaezH Offline
              Hasan Vaez
              wrote on last edited by
              #9

              @jsulm I know. Where is lib (SO file) in Multimedia plugin?

              jsulmJ 1 Reply Last reply
              0
              • Hasan VaezH Hasan Vaez

                @jsulm I know. Where is lib (SO file) in Multimedia plugin?

                jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #10

                @Hasan-Vaez For camera:

                ldd ~/Qt/5.10.0/gcc_64/plugins/mediaservice/libgstcamerabin.so 
                

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • SGaistS SGaist

                  You are mixing your distribution provided Qt with the one you installed through the online installer. They are two different versions of Qt hence my question about the libraries linked to your 5.10 version of the gstreamer plugin.

                  Hasan VaezH Offline
                  Hasan VaezH Offline
                  Hasan Vaez
                  wrote on last edited by
                  #11

                  @SGaist Thank you for your reply and trying to solve this maybe bug.
                  I did not install GStreamer after installing QT.

                  I try to setup a new Ubuntu 16.04LTS in VMWare machine + QT5.10.0 again and run the example of QCamera which is in part of the Qt package and see what happened.

                  1 Reply Last reply
                  0
                  • SGaistS SGaist

                    You are mixing your distribution provided Qt with the one you installed through the online installer. They are two different versions of Qt hence my question about the libraries linked to your 5.10 version of the gstreamer plugin.

                    Hasan VaezH Offline
                    Hasan VaezH Offline
                    Hasan Vaez
                    wrote on last edited by Hasan Vaez
                    #12

                    @SGaist said in QCamera Problems!:

                    with

                    I installed a new Ubuntu 14.04 LTS, Qt5.10.0 (Offline installer).
                    Also installed some essential PKGs for running Camera: mesa-common-dev, libpulse-dev, libgl1-mesa-dev

                    But problem is remained!!!

                    Mr. Gsaist, did you tried? : https://doc.qt.io/qt-5.10/qtmultimedia-multimediawidgets-camera-example.html

                    Would you please make a run the QCamera example from QT example folder.

                    1 Reply Last reply
                    0
                    • mranger90M Offline
                      mranger90M Offline
                      mranger90
                      wrote on last edited by
                      #13

                      If you are running from a VMware machine, you could have problems accessing the camera.
                      Make sure that the camera is not connected to the host.
                      See the "Player | Removable Devices | ..." menu option of VMware player.
                      Also, if its connect to the usb you may have to downgrade from usb3.0 to sub 2.0 or even usb 1.1 from the player settings menu.

                      Hasan VaezH 1 Reply Last reply
                      0
                      • mranger90M mranger90

                        If you are running from a VMware machine, you could have problems accessing the camera.
                        Make sure that the camera is not connected to the host.
                        See the "Player | Removable Devices | ..." menu option of VMware player.
                        Also, if its connect to the usb you may have to downgrade from usb3.0 to sub 2.0 or even usb 1.1 from the player settings menu.

                        Hasan VaezH Offline
                        Hasan VaezH Offline
                        Hasan Vaez
                        wrote on last edited by Hasan Vaez
                        #14

                        @mranger90
                        Thank you, but I think you do not read my full description in the top.
                        I tested it in another PC without VM.

                        1 Reply Last reply
                        0
                        • mrjjM Offline
                          mrjjM Offline
                          mrjj
                          Lifetime Qt Champion
                          wrote on last edited by
                          #15

                          @Hasan-Vaez said in QCamera Problems!:

                          Unable to query the parameter info: "Invalid argument"

                          Google that suggest something with the gstreamer. but im not 100% sure.

                          Anyway, i would test the camera in the same linux using some linux camera program to verify something can see it.
                          https://www.linuxlinks.com/webcam/

                          1 Reply Last reply
                          0
                          • Hasan VaezH Offline
                            Hasan VaezH Offline
                            Hasan Vaez
                            wrote on last edited by Hasan Vaez
                            #16

                            Just tell me, you do not having any problem with Camera with QT C++ in linux?

                            1 Reply Last reply
                            0
                            • mranger90M Offline
                              mranger90M Offline
                              mranger90
                              wrote on last edited by
                              #17

                              I've been able to use it many time with various Linuxi and through several Qt releases.
                              Are you able to use the camera outside of Qt, for example with the Cheese app ?

                              Hasan VaezH 2 Replies Last reply
                              0
                              • mranger90M mranger90

                                I've been able to use it many time with various Linuxi and through several Qt releases.
                                Are you able to use the camera outside of Qt, for example with the Cheese app ?

                                Hasan VaezH Offline
                                Hasan VaezH Offline
                                Hasan Vaez
                                wrote on last edited by Hasan Vaez
                                #18

                                @mranger90
                                Thank you for your reply.
                                Yes, I can use it outside of QT. I tested it with Cheese app in Ubuntu 16.04 LTS without any problem.
                                I also have not any problem in other OS like MAC and WINDOWS.

                                1 Reply Last reply
                                0
                                • mranger90M mranger90

                                  I've been able to use it many time with various Linuxi and through several Qt releases.
                                  Are you able to use the camera outside of Qt, for example with the Cheese app ?

                                  Hasan VaezH Offline
                                  Hasan VaezH Offline
                                  Hasan Vaez
                                  wrote on last edited by Hasan Vaez
                                  #19

                                  @mranger90
                                  Please tell me what plugins did you install for qmultimedia in QT5?

                                  1 Reply Last reply
                                  0
                                  • mranger90M Offline
                                    mranger90M Offline
                                    mranger90
                                    wrote on last edited by
                                    #20

                                    Unfortunately I don't have any of those systems in front of me now and won't until Monday.
                                    Off the top of my head I'm pretty sure I've installed libgstreamerdev and maybe gstpluginsbase?
                                    Not sure of the exact package names.

                                    1 Reply Last reply
                                    0
                                    • mranger90M Offline
                                      mranger90M Offline
                                      mranger90
                                      wrote on last edited by
                                      #21

                                      Ok, I just set up an Ubuntu 16.04 VM with VMWare on my pathetically underpowered home system which is running Win 10 as the native OS.
                                      Installed Qt 5.10.0.
                                      Have a Microsoft LifeCam HD-600 usb camera.
                                      VMWare is set up to use USB 1.1.
                                      Cheese can access and display the camera.
                                      To build the Examples/multimediaWidgets/camera project I had to install:
                                      libgl-mesa-dev
                                      mesa-common-dev
                                      libpulse-dev

                                      Other than a little fiddling with the camera parameters that's all I had to do to get it to work on a stock ubuntu 16.04 install.
                                      I'd have to dig out some of my other apps to test with, but it looks like this should work for you. If you can post a more complete set of your code I'd be happy to test it tomorrow.

                                      Hasan VaezH 1 Reply Last reply
                                      1
                                      • mranger90M mranger90

                                        Ok, I just set up an Ubuntu 16.04 VM with VMWare on my pathetically underpowered home system which is running Win 10 as the native OS.
                                        Installed Qt 5.10.0.
                                        Have a Microsoft LifeCam HD-600 usb camera.
                                        VMWare is set up to use USB 1.1.
                                        Cheese can access and display the camera.
                                        To build the Examples/multimediaWidgets/camera project I had to install:
                                        libgl-mesa-dev
                                        mesa-common-dev
                                        libpulse-dev

                                        Other than a little fiddling with the camera parameters that's all I had to do to get it to work on a stock ubuntu 16.04 install.
                                        I'd have to dig out some of my other apps to test with, but it looks like this should work for you. If you can post a more complete set of your code I'd be happy to test it tomorrow.

                                        Hasan VaezH Offline
                                        Hasan VaezH Offline
                                        Hasan Vaez
                                        wrote on last edited by Hasan Vaez
                                        #22

                                        @mranger90 said in QCamera Problems!:

                                        libpulse-dev

                                        Thank you arranger for your comments.
                                        I install another Ubuntu 16.04, Qt5.10.0 (along with 3 components: libgl1-mesa-dev mesa-common-dev libpulse-dev)
                                        Test the Camera example with VMWARE MAC CAM and also with LOGITEC CAM.

                                        The problem remained!

                                        My codes are:
                                        1- Camera example in QT folder
                                        2- The following simple codes:

                                        QCamera *Camera;
                                        QCameraImageCapture *ImageCapture;
                                        QCameraInfo *CameraInfo;

                                        void MainWindow::on_pushButton_clicked()
                                        {
                                        Camera = new QCamera;
                                        ImageCapture = new QCameraImageCapture(Camera);

                                        Camera->setViewfinder(ui->wCamera);
                                        ui->wCamera->setAspectRatioMode(Qt::KeepAspectRatioByExpanding);
                                        Camera->setCaptureMode(QCamera::CaptureViewfinder);
                                        Camera->start();
                                        }

                                        All things seems to be correct, there should be a small point which I don't know what is it??

                                        1 Reply Last reply
                                        0
                                        • mranger90M Offline
                                          mranger90M Offline
                                          mranger90
                                          wrote on last edited by
                                          #23

                                          ok, Heres the simplest code I could create that runs with my setup:
                                          Mainwindow.h

                                          #ifndef MAINWINDOW_H
                                          #define MAINWINDOW_H
                                          
                                          #include <QMainWindow>
                                          #include <QCamera>
                                          
                                          namespace Ui {
                                          class MainWindow;
                                          }
                                          
                                          class MainWindow : public QMainWindow
                                          {
                                              Q_OBJECT
                                          
                                          public:
                                              explicit MainWindow(QWidget *parent = 0);
                                              ~MainWindow();
                                          
                                          private slots:
                                              void on_actionStart_triggered();
                                          
                                          private:
                                              Ui::MainWindow *ui;
                                              QCamera *m_camera;
                                          };
                                          
                                          #endif // MAINWINDOW_H
                                          
                                          

                                          mainwindow.cpp

                                          #include "mainwindow.h"
                                          #include "ui_mainwindow.h"
                                          
                                          #include <QVideoWidget>
                                          #include <QCameraInfo>
                                          #include <QCameraViewfinderSettings>
                                          #include <QDebug>
                                          
                                          MainWindow::MainWindow(QWidget *parent) :
                                              QMainWindow(parent),
                                              ui(new Ui::MainWindow)
                                          {
                                              ui->setupUi(this);
                                              QVideoWidget *videoDisplay = new QVideoWidget;
                                              setCentralWidget(videoDisplay);
                                          
                                              // get a list of available cameras
                                              QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
                                              // just pick the first
                                              if (cameras.size() > 0) {
                                                  qDebug() << "creating camera from " << cameras.at(0).deviceName() << cameras.at(0).description();
                                                  m_camera = new QCamera(cameras.at(0));
                                                  if (m_camera) {
                                                      m_camera->setViewfinder(videoDisplay);
                                                      m_camera->setCaptureMode(QCamera::CaptureViewfinder);
                                                      QCameraViewfinderSettings settings = m_camera->viewfinderSettings();
                                                      // change resolution to 320x240
                                                      settings.setResolution(QSize(320,240));
                                                      m_camera->setViewfinderSettings(settings);
                                          
                                          
                                                  }
                                              }
                                          }
                                          
                                          MainWindow::~MainWindow()
                                          {
                                              delete ui;
                                          }
                                          
                                          void MainWindow::on_actionStart_triggered()
                                          {
                                              if (m_camera) {
                                                  m_camera->start();
                                              }
                                          }
                                          
                                          

                                          camtest.pro

                                          
                                          QT       += core gui multimedia multimediawidgets
                                          
                                          greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
                                          
                                          TARGET = camtest
                                          TEMPLATE = app
                                          
                                          DEFINES += QT_DEPRECATED_WARNINGS
                                          SOURCES += \
                                                  main.cpp \
                                                  mainwindow.cpp
                                          
                                          HEADERS += \
                                                  mainwindow.h
                                          
                                          FORMS += \
                                                  mainwindow.ui
                                          
                                          

                                          Mainwindow is just a stock MainWindow with a menu item to start video capture.

                                          Let me know if this works.

                                          Hasan VaezH 1 Reply Last reply
                                          2

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved