Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/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?
codersmurf last edited by
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:
###painter # 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(QtCore.Qt.red) self.penRectangle.setWidth(3) # draw rectangle on painter self.painterInstance.setPen(self.penRectangle) self.painterInstance.drawRect(10,10,10,10) self.label_imageDisplay = QLabel() # set pixmap onto the label widget self.label_imageDisplay.setPixmap(self.pixmap_image) self.label_imageDisplay.setAutoFillBackground(Qt.transparent) #self.label_imageDisplay.show() 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?