当我使用:
setNotifyInterval(1)
,我注意到它有时会跳过一毫秒。例如:当我打印媒体的位置时,它通常会跳过 2 秒而不是 1 秒。这是一个问题,因为我希望程序每 10 秒停止一次,如果它跳过一毫秒就不会停止。
例如:如果我希望视频在 10 秒(10000 毫秒)处停止,当我输出位置时有时会这样:
9999 毫秒
10001 毫秒
所以跳过了 10000 毫秒的位置,视频不会停止。以前有没有其他人遇到过这个问题?是由于视频缓冲还是计算机延迟?谢谢你的帮助。
该方法的文档是:setNotifyInterval(milliseconds)
编辑:我感谢你们的帮助。以下是对该示例的更多解释:
所以我有一个positionChanged
连接到positionChanged
插槽的信号。(positionChanged 方法与信号名称相同,但可以更改为任何其他名称)。
因此,我称之为连接信号槽机制:self.mediaPlayer.positionChanged.connect(self.positionChanged)
positionChanged 方法告诉视频每 10 秒停止一次,所以它看起来像这样:
def positionChanged(self, position):
if position % 10000 == 0: # 10000 milliseconds is 10 seconds
self.mediaPlayer.pause()
视频播放器有时不会每 10 秒停止一次。这是因为setNotifyInterval(1) isn't always accurate
. 我将使用 musicamante 所说的,并检查播放器是否大于或等于 10 秒。谢谢你的帮助