我正在尝试创建一个程序内视频播放器,以便从本地文件中播放选择本地.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)