【问题标题】:pyqt Playing movie files in phonon player QT4.9pyqt在声子播放器QT4.9中播放电影文件
【发布时间】:2012-10-02 08:25:12
【问题描述】:

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

据我所知,我需要

  • 设置后端功能(将 phonon 后端设置为 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()

请帮助我。非常感谢你们。

我使用的是 python 2.6 和 qt 版本 4.9。现在我在一个虚拟框 windows XP 上编码

编辑: 得到了一个关于这个问题的示例,但是.. 加载文件时出现此错误。

“由于管脚未连接,无法执行操作”

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

【问题讨论】:

    标签: python video media-player pyqt4 phonon


    【解决方案1】:

    别忘了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_())
    

    编辑:

    最近有多人评论说上述代码不再提供所需的行为。我已经很久没有使用 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_())
    

    【讨论】:

    • 你应该在加载媒体之前show播放器,否则它会在播放完电影后显示。至少我的情况是这样的。
    • 对我来说它也不起作用,vp.show() 需要在 media = Phonon.MediaSource('C:\\video.mp4') 之前,并且由于某种原因,窗口的大小似乎为 0。
    • @mrgloom:我想这可能在过去 4 年里发生了变化。早在 2012 年,使用 PyQt 4.7,这工作得很好。我会更新答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多