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. Camera example Freeze with QT6 on Ubuntu 22.04.1 when minimized or ApplicationDeactivate event.
Forum Updated to NodeBB v4.3 + New Features

Camera example Freeze with QT6 on Ubuntu 22.04.1 when minimized or ApplicationDeactivate event.

Scheduled Pinned Locked Moved Solved General and Desktop
15 Posts 2 Posters 971 Views 1 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.
  • JoeCFDJ JoeCFD

    @MStackoverflo On Ubuntu 22.04, default Qt version in the distribution is 5.15.3. Better to try 5.15.3. Qt5.12 is kind of old. I would not try Qt5.12 on Ubuntu 22.04. If you want to switch to Qt6, better to install Qt6.6 or above. Multimedia module has been reworked in Qt6.

    M Offline
    M Offline
    MStackoverflo
    wrote on last edited by
    #3

    @JoeCFD Hi, the QT6 version I'm trying is indeed QT6.6. The QT5 version I was trying was 5.15.2, the one that is available in the unified installer. I will rectify my post.

    JoeCFDJ 1 Reply Last reply
    0
    • M MStackoverflo

      @JoeCFD Hi, the QT6 version I'm trying is indeed QT6.6. The QT5 version I was trying was 5.15.2, the one that is available in the unified installer. I will rectify my post.

      JoeCFDJ Offline
      JoeCFDJ Offline
      JoeCFD
      wrote on last edited by JoeCFD
      #4

      @MStackoverflo Can you try Xorg(not wayland) first to see if the code works.
      If your code does not work, post it here if possible. I can try it with both 5.15.3 and 6.6 for you.

      M 1 Reply Last reply
      0
      • JoeCFDJ JoeCFD

        @MStackoverflo Can you try Xorg(not wayland) first to see if the code works.
        If your code does not work, post it here if possible. I can try it with both 5.15.3 and 6.6 for you.

        M Offline
        M Offline
        MStackoverflo
        wrote on last edited by MStackoverflo
        #5

        @JoeCFD Hi, I tried with Xorg on Ubuntu by setting WaylandEnable=false in /etc/gdm3/custom.conf, but the QVideoWidget only shows one frame and freezes.

        The camera example is here :
        https://doc.qt.io/qt-6/qtmultimedia-camera-example.html
        https://doc.qt.io/qt-5.15/qtmultimedia-multimediawidgets-camera-example.html

        EDIT :
        I'm developing an APP that uses that example's code, which is why I'm seeking help.

        JoeCFDJ 1 Reply Last reply
        0
        • M MStackoverflo

          @JoeCFD Hi, I tried with Xorg on Ubuntu by setting WaylandEnable=false in /etc/gdm3/custom.conf, but the QVideoWidget only shows one frame and freezes.

          The camera example is here :
          https://doc.qt.io/qt-6/qtmultimedia-camera-example.html
          https://doc.qt.io/qt-5.15/qtmultimedia-multimediawidgets-camera-example.html

          EDIT :
          I'm developing an APP that uses that example's code, which is why I'm seeking help.

          JoeCFDJ Offline
          JoeCFDJ Offline
          JoeCFD
          wrote on last edited by JoeCFD
          #6

          @MStackoverflo Just tested. Both work fine with a camera.

          M 1 Reply Last reply
          0
          • JoeCFDJ JoeCFD

            @MStackoverflo Just tested. Both work fine with a camera.

            M Offline
            M Offline
            MStackoverflo
            wrote on last edited by
            #7

            @JoeCFD Nice. That means it may be a setup problem. Did you try on a Virtual Machine or original? Also, were you on ubuntu 22?

            JoeCFDJ 1 Reply Last reply
            0
            • M MStackoverflo

              @JoeCFD Nice. That means it may be a setup problem. Did you try on a Virtual Machine or original? Also, were you on ubuntu 22?

              JoeCFDJ Offline
              JoeCFDJ Offline
              JoeCFD
              wrote on last edited by
              #8

              @MStackoverflo Not in a virtual machine. I tried it on Lubuntu 22.04.

              M 2 Replies Last reply
              0
              • JoeCFDJ JoeCFD

                @MStackoverflo Not in a virtual machine. I tried it on Lubuntu 22.04.

                M Offline
                M Offline
                MStackoverflo
                wrote on last edited by
                #9

                @JoeCFD I confirm that I cannot make it work on Ubuntu 22 when installed on a hard-drive. I get the same results. I'm currently trying to build on Lubuntu. Were you using wayland on Ubuntu? Because the default install I get is LXQt and uses x11. What is your setup?

                1 Reply Last reply
                0
                • JoeCFDJ JoeCFD

                  @MStackoverflo Not in a virtual machine. I tried it on Lubuntu 22.04.

                  M Offline
                  M Offline
                  MStackoverflo
                  wrote on last edited by
                  #10

                  @JoeCFD I try to run it on Lubuntu 22.04 LXQT with QT6.6 and it shows a blank black screen. I would like to know your setup. I have a fresh Lubuntu with sudo apt install build-essential libxcb*

                  JoeCFDJ 1 Reply Last reply
                  0
                  • M MStackoverflo

                    @JoeCFD I try to run it on Lubuntu 22.04 LXQT with QT6.6 and it shows a blank black screen. I would like to know your setup. I have a fresh Lubuntu with sudo apt install build-essential libxcb*

                    JoeCFDJ Offline
                    JoeCFDJ Offline
                    JoeCFD
                    wrote on last edited by
                    #11

                    @MStackoverflo So many packages. I am not sure what you mean by setup. I use X11.

                    M 1 Reply Last reply
                    0
                    • JoeCFDJ JoeCFD

                      @MStackoverflo So many packages. I am not sure what you mean by setup. I use X11.

                      M Offline
                      M Offline
                      MStackoverflo
                      wrote on last edited by
                      #12

                      @JoeCFD Ok, the problem seems to be related in some ways to QT with wayland. Thank you for your time, it is very appreciated.

                      The app I need to develop is for Ubuntu 22 users, so it uses wayland.

                      Anyone has a clue on this setup?

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        MStackoverflo
                        wrote on last edited by
                        #13

                        I used gstreamer backend instead of ffmpeg and I no longer get the following error :

                        qt.gui.imageio.jpeg: JPEG datastream contains no image
                        qt.gui.imageio.jpeg: JPEG datastream contains no image
                        Invalid texture upload for 0x55e799d1ef80 layer=0 mip=0
                        

                        Concerning video freeze, the window does not need to be minimized to freeze. If I slide another app over it to completely occlude it, it freezes. But, if there's even a small part showing, it doesn't freeze.

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          MStackoverflo
                          wrote on last edited by
                          #14

                          I made it work using XCB instead of Wayland. For some reason, QT has a problem with Wayland. QT can run using XCB even though Ubuntu desktop uses wayland.

                          Before invoking QApplication in main, these line must be added :

                          qputenv("QT_QPA_PLATFORM","xcb");
                          qputenv("QT_MEDIA_BACKEND","gstreamer");
                          

                          libxcb packages must be installed prior.

                          JoeCFDJ 1 Reply Last reply
                          0
                          • M MStackoverflo has marked this topic as solved on
                          • M MStackoverflo

                            I made it work using XCB instead of Wayland. For some reason, QT has a problem with Wayland. QT can run using XCB even though Ubuntu desktop uses wayland.

                            Before invoking QApplication in main, these line must be added :

                            qputenv("QT_QPA_PLATFORM","xcb");
                            qputenv("QT_MEDIA_BACKEND","gstreamer");
                            

                            libxcb packages must be installed prior.

                            JoeCFDJ Offline
                            JoeCFDJ Offline
                            JoeCFD
                            wrote on last edited by JoeCFD
                            #15

                            @MStackoverflo you may check if you have installed all wayland-related gstreamer packages. for example: gstreamer-gl-wayland-1.0.
                            and test some pipelines from command line. For example:
                            gst-launch-1.0 -v videotestsrc ! waylandsink

                            1 Reply Last reply
                            1

                            • Login

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