我在 PyQt4 中使用 Phonon 编写了一个简单的视频播放器。视频播放正常。但是我无法将视频搜索到给定的位置。这是我写的代码:
#!/usr/bin/python
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.phonon import Phonon
import sys
class VideoPlayer(QWidget):
def __init__(self, address, parent = None):
self.address = address
QWidget.__init__(self)
self.player = Phonon.VideoPlayer(Phonon.VideoCategory, self)
self.player.load(Phonon.MediaSource(self.address))
window = QHBoxLayout(self)
window.addWidget(self.player)
self.setWindowTitle("Simple Video Player")
self.player.play()
self.player.seek(10240)
app = QApplication(sys.argv)
vp = VideoPlayer(sys.argv[1])
vp.show()
app.exec_()
我要做的就是在给定位置开始和停止视频。
提前致谢。
请您参考如下方法:
无法在媒体源仍在加载时搜索到其位置。
因此将处理程序连接到媒体对象的 stateChanged信号,并等待它的状态变为 PlayingState在尝试寻找之前。
self.player.mediaObject().stateChanged.connect(self.handleStateChanged)
...
def handleStateChanged(self, newstate, oldstate):
if newstate == Phonon.PlayingState:
self.player.seek(10240)
