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.
  • O Offline
    O Offline
    onek24
    wrote on last edited by
    #16

    Sorry, my bad, haven't read the layouts part. Well, in that case: Have you tried positioning it without a layout? Does that work? And have you tried playing with the horizontal and vertical settings of the widget?

    1 Reply Last reply
    0
    • O Offline
      O Offline
      onek24
      wrote on last edited by
      #17

      Sorry, my bad, haven't read the layouts part. Well, in that case: Have you tried positioning it without a layout? Does that work? And have you tried playing with the horizontal and vertical settings of the widget?

      1 Reply Last reply
      0
      • 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