pyqt在声子播放器QT4.9中播放电影文件

Kat*_*ina 2 python video phonon pyqt4 media-player

我绝对需要你帮助的人......就像真的一样.我的笔记本电脑被盗了,我没有备份我一年前制作的pyqt声子视频播放器.我忘记了如何以及如何重新创建它.
我只知道要做的一些关键事情.所以请帮帮我.

从我记忆中我需要

  • 设置后端功能(将声音后端设置为Windows媒体播放器?)
  • 安装所需的编解码器(我没有副本)
  • 对程序进行编码(遗憾的是我忘记了如何播放视频)

如果那里有人有一个工作样本python视频播放器,你能和我分享一下吗?

我现在正在尝试,我的样本根本不起作用

from PyQt4.phonon import Phonon
        media_source = phonon.Phonon.MediaSource("C:\\Sample.avi")
        self.ui.videoPlayer.load(media_source)
        self.ui.videoPlayer.play()
Run Code Online (Sandbox Code Playgroud)

请帮我.非常感谢你们.

我正在使用python 2.6和qt 4.9版.现在我在虚拟机Windows XP上编码

编辑:有这个问题的以下示例,但..加载文件时出现此错误.

"由于引脚未连接,无法执行操作"

这可能是因为我在Ubuntu中使用虚拟盒子?

Jun*_*uxx 7

不要忘记视频show()播放器.对于其他人,根据我的经验,Phonon经常无法找到在Windows上播放视频所需的编解码器.安装K-Lite编解码器包可能适用于这种情况.

这是一个适合我的自包含示例(Windows Vista32,Python 2.6.5,PyQt 4.7.3).

import sys
from PyQt4 import QtCore, QtGui
from PyQt4.phonon import Phonon
app = QtGui.QApplication(sys.argv)
vp = Phonon.VideoPlayer()
media = Phonon.MediaSource('C:\\video.mp4')
vp.load(media)
vp.play()
vp.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

编辑:

最近有多个人评论说上面的代码不再提供所需的行为.我多年没有使用过PyQt,但我怀疑其中一个更新可能改变了Phonon的功能.

根据评论者的说法,vp.show()现在需要调用Phonon.MediaSource(),即:

...
vp = Phonon.VideoPlayer()
vp.show()
media = Phonon.MediaSource('C:\\video.mp4')
vp.load(media)
vp.play()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

  • 您应该在加载媒体之前“显示”播放器,否则它将在播放电影后显示。至少这就是我的情况。 (2认同)