Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Video element plays video at wrong position on IOS
Forum Updated to NodeBB v4.3 + New Features

Video element plays video at wrong position on IOS

Scheduled Pinned Locked Moved QML and Qt Quick
29 Posts 5 Posters 8.0k 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.
  • timdayT Offline
    timdayT Offline
    timday
    wrote on last edited by
    #18

    See "QTBUG-42721":https://bugreports.qt-project.org/browse/QTBUG-42721

    I raised this as an issue with iOS video placement (using the QML VideoOutput, but it presumably sits on the same underlying code as the C++ ) a week or so ago which sounds like it's the same as hailong's problem. If it helps identify it's the same thing:

    • It came in with Qt5.3.2; I never saw the problem on 5.3.1.
    • If you rotate the device while the video is playing, it'll move to where you expect it to! (At least until the video ends; if you have it set up to loop, it might move back to the top corner again).
    1 Reply Last reply
    0
    • timdayT Offline
      timdayT Offline
      timday
      wrote on last edited by
      #19

      See "QTBUG-42721":https://bugreports.qt-project.org/browse/QTBUG-42721

      I raised this as an issue with iOS video placement (using the QML VideoOutput, but it presumably sits on the same underlying code as the C++ ) a week or so ago which sounds like it's the same as hailong's problem. If it helps identify it's the same thing:

      • It came in with Qt5.3.2; I never saw the problem on 5.3.1.
      • If you rotate the device while the video is playing, it'll move to where you expect it to! (At least until the video ends; if you have it set up to loop, it might move back to the top corner again).
      1 Reply Last reply
      0
      • J Offline
        J Offline
        Jacky2k
        wrote on last edited by
        #20

        Well, then I guess it is not the same problem as I am using Qt 4.8.5.

        1 Reply Last reply
        0
        • J Offline
          J Offline
          Jacky2k
          wrote on last edited by
          #21

          Well, then I guess it is not the same problem as I am using Qt 4.8.5.

          1 Reply Last reply
          0
          • J Offline
            J Offline
            Jacky2k
            wrote on last edited by
            #22

            At least in my case it seems to be a problem of gsteramer and not Qt. I was able to reproduce the problem using gst-launch:
            @# gst-launch -v videotestsrc ! xvimagesink@
            When I use ximagesink it works perfectly fine.

            1 Reply Last reply
            0
            • J Offline
              J Offline
              Jacky2k
              wrote on last edited by
              #23

              At least in my case it seems to be a problem of gsteramer and not Qt. I was able to reproduce the problem using gst-launch:
              @# gst-launch -v videotestsrc ! xvimagesink@
              When I use ximagesink it works perfectly fine.

              1 Reply Last reply
              0
              • H Offline
                H Offline
                hailong
                wrote on last edited by
                #24

                wow, so many replies on my thread, I feel so happy that more and more people are using Qt for cross-platform app development.

                I could't not solve my problem on September even if I had done a lot of research on that, so I used one week to learn how to develop for IOS and rewrited the hole app using Obj-C.

                1 Reply Last reply
                0
                • H Offline
                  H Offline
                  hailong
                  wrote on last edited by
                  #25

                  wow, so many replies on my thread, I feel so happy that more and more people are using Qt for cross-platform app development.

                  I could't not solve my problem on September even if I had done a lot of research on that, so I used one week to learn how to develop for IOS and rewrited the hole app using Obj-C.

                  1 Reply Last reply
                  0
                  • J Offline
                    J Offline
                    Jacky2k
                    wrote on last edited by
                    #26

                    :P
                    I already tracked it down to a problem in X server or the kernel.
                    I know that it is caused by a change in the X server but I don't know which change and if this change is ok for newer kernels.

                    1 Reply Last reply
                    0
                    • J Offline
                      J Offline
                      Jacky2k
                      wrote on last edited by
                      #27

                      :P
                      I already tracked it down to a problem in X server or the kernel.
                      I know that it is caused by a change in the X server but I don't know which change and if this change is ok for newer kernels.

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        Marika
                        wrote on last edited by
                        #28

                        I too have this problem. My UI code is all QML and is super simple. I have a video component

                            Video {
                                id: myVideo
                                anchors.fill: parent
                                anchors.margins: 10
                                source: mediaFolder.fileUrl(filesList[mediaIndex])
                            }
                        

                        and a button.

                            Rectangle {
                                id: start
                                anchors.right: parent.right
                                anchors.verticalCenter: parent.verticalCenter
                                anchors.margins: 20
                                width: parent.height * 0.85
                                height: parent.height * 0.85
                                color: "blue"
                        
                                MouseArea {
                                    anchors.fill : parent
                                    onPressed: {
                                        mediaIndex++; myVideo.play();
                                    }
                                }
                        

                        When you click the button it plays the next video in the mediaFolder.

                        This works as expected on Windows and Android.

                        On iOS i have the random positioning problem described in this forum, which can somewhat be worked around by rotating the device (not nice).

                        What is my bigger problem is settling on a video encoding that works everywhere. These same videos do not play on Mac (either in my QML app or directly from Finder) or Linux (not in my QML app but DO when I launch directly from the file manager.

                        So for now i cant say if the positioning problem is unique to iOS, it could be on Mac and Linux too - i just cant see my video there yet.

                        I had settled on using Handbrakes ipod profile as the most cross platform but alas its back to the drawing board for video format. Has anyone else nailed the absolute cross platform video format?

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          Marika
                          wrote on last edited by
                          #29

                          I too have this problem. My UI code is all QML and is super simple. I have a video component

                              Video {
                                  id: myVideo
                                  anchors.fill: parent
                                  anchors.margins: 10
                                  source: mediaFolder.fileUrl(filesList[mediaIndex])
                              }
                          

                          and a button.

                              Rectangle {
                                  id: start
                                  anchors.right: parent.right
                                  anchors.verticalCenter: parent.verticalCenter
                                  anchors.margins: 20
                                  width: parent.height * 0.85
                                  height: parent.height * 0.85
                                  color: "blue"
                          
                                  MouseArea {
                                      anchors.fill : parent
                                      onPressed: {
                                          mediaIndex++; myVideo.play();
                                      }
                                  }
                          

                          When you click the button it plays the next video in the mediaFolder.

                          This works as expected on Windows and Android.

                          On iOS i have the random positioning problem described in this forum, which can somewhat be worked around by rotating the device (not nice).

                          What is my bigger problem is settling on a video encoding that works everywhere. These same videos do not play on Mac (either in my QML app or directly from Finder) or Linux (not in my QML app but DO when I launch directly from the file manager.

                          So for now i cant say if the positioning problem is unique to iOS, it could be on Mac and Linux too - i just cant see my video there yet.

                          I had settled on using Handbrakes ipod profile as the most cross platform but alas its back to the drawing board for video format. Has anyone else nailed the absolute cross platform video format?

                          1 Reply Last reply
                          0

                          • Login

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