PyQt5视频播放器图形问题

时间:2018-06-16 02:15:47

标签: python pyqt pyqt5 qmediaplayer qvideowidget

我正在尝试创建一个程序内视频播放器,以便从本地文件中播放选择本地.mov。我遇到的问题是,一旦QMediaPlayer开始播放,视频就会占用它所在的整个QWidget,然后缩小或扩展到其原始大小,而不管其父QWidget是否溢出。当它这样做时,它在其父QWidget中创建了奇怪的图形Droste效果。效果可以在这个gif中看到

使用随机测试视频我发现躺在桌面上。

QWidget和视频播放器的代码如下:

    #---CONTAINERS---#
    body = QWidget(self)
    body.setObjectName('Body')
    #----------------#

    #---LAYOUTS---#
    body_box = QHBoxLayout(body)
    #-------------#

    #---VIDEO---#
    self.player = QMediaPlayer(body)
    video_widget = QVideoWidget(body)
    self.player.setVideoOutput(video_widget)
    self.player.setMedia(QMediaContent(QUrl.fromLocalFile("/path/to/file.mov")))
    self.player.play()

    body_box.addWidget(video_widget)
    #-----------#

    self.grid.addWidget(body, 1, 1) # Adds 'Body' to the window's QGridLayout

可以采取哪些措施来解决这个问题?

(我在macOS Sierra上运行PyQt5)

0 个答案:

没有答案