Important: Please read the Qt Code of Conduct -

Is there a way to manipulate Qmediaplayer frames and display? Or Draw on it with a transparent widget which will not affect the video?

  • Hello, I have a desktop application on ubuntu which has a qmediaplayer. I am working with pyqt5.
    I am trying to manipulate frames of the video and show as an another video in real time. I have tried to use OpenCV but i was not able find a way to use those frames. So, I started to look other options and i have tried to draw on qmediaplayer but i couldn't do it properly. The pixmap was overriding the videoplayer element so i was not able to play video.

    here is the code snippet from this attempt:

            # convert image file into pixmap
            self.pixmap_image = QtGui.QPixmap("Empty.png")
            # create painter instance with pixmap
            self.painterInstance = QtGui.QPainter(self.pixmap_image)
            # set rectangle color and thickness
            self.penRectangle = QtGui.QPen(
            # draw rectangle on painter
            self.label_imageDisplay = QLabel()
            # set pixmap onto the label widget
            self.grid.addWidget(self.vidWidget, 1, 0, 12, 15 )  
    #vidWidget is the widget which has the control widgets and mediaplayer
            self.grid.addWidget(self.label_imageDisplay, 1, 0, 5, 5 )

    a screenshot of it (i changed the size so you can see what is happening)

    i tried to make it transparent but it didn't work out it was showing background of the window not the mediaplayer.

    So, I need your help.
    *Is there a way to manipulate and save/play frames of the video?

    • Is there a way to draw on a transparent widget which will now affect the video?

Log in to reply