PyQt5:QMediaplayer-Layout布局,快慢进
1.前言
之前的一篇中说到,实现了播放,列表,进度条,PyQt5:QMediaplayer,QVideowidget播放视频,这次更新了窗口自适应,快进,慢进。
2.布局
采用栅格布局、Qgridlayout,在UI文件上,布局设置为 栅格布局。
代码部分:
# VideoWidget 从0行,0列开始,占24行,16列
self.gridLayout.addWidget(self.mVideoWin,0,0,24,16)
self.gridLayout.addWidget(self.listWidget,0,16,18,2)
self.gridLayout.addWidget(self.play,24,0,1,1)
self.gridLayout.addWidget(self.stop,24,1,1,1)
self.gridLayout.addWidget(self.Slider,24,2,1,5)
self.gridLayout.addWidget(self.fastforwad,24,7,1,1)
self.gridLayout.addWidget(self.jog,24,8,1,1)
快进,慢进
QMediaPlayer 有一个成员 是 playbackRate:playbackRate : qreal
qreal 默认float类型。
播放速率,又来控制快进慢进,正常,不设置的情况默认播放速率为1。我这里设置用按键控制快进慢进,步长为0.2。
代码如下:
按键初始化:
self.fastforwad = QPushButton(self)
self.fastforwad.setText("FastForward")
self.fastforwad.show()
self.jog = QPushButton(self)
self.jog.setText("Jog")
self.jog.show()
槽函数实现:
def FastForword(self):
self.playrate += 0.2
self.SetPlaybackRate(self.playrate)
def Jog(self):
self.playrate -= 0.2
self.SetPlaybackRate(self.playrate)
def SetPlaybackRate(self,val):
self.mplayer.pause()
self.mplayer.setPlaybackRate(val)
self.mplayer.play()
print("playbackRate:",self.mplayer.playbackRate())
播放效果如下:
源码
正在上传中,随后更新。
下一篇
最新更新一篇也是相关的最后一篇,涉及到了播放列表,音量调节,设置等等。链接如下:
PyQt5:QMediaplayer,QVideowidget播放视频(3)