wx.MediaCtrl仅播放音频

问题描述 投票:0回答:1

我正在尝试使用wx.MediaCtrl播放视频。当我运行我的代码时,视频不播放,只播放音频。我尝试过不同的视频和文件格式,但问题仍然存在。

这是我的代码:

import wx
import wx.media

class Video(wx.Panel):
    def __init__(self, parent, id):
        wx.Panel.__init__(self, parent, id)
        self.Media = wx.media.MediaCtrl(self, style=wx.SIMPLE_BORDER, szBackend=wx.media.MEDIABACKEND_QUICKTIME)
        videoPath = "/Users/sherylhsu/Documents/sadf.mp4"
        self.Media.Load(videoPath)
        self.Media.Play()


app = wx.App(redirect=False)
mainFrame = wx.Frame(None, title="Temp")

video = Video(mainFrame, wx.ID_ANY)

mainFrame.Show()

app.MainLoop()

感谢您所有的帮助!

python-3.x wxpython media-player
1个回答
0
投票

您正在显示mainFrame,因此视频不会出现。 让它工作的最简单方法是使Video成为框架:

import wx
import wx.media

class Video(wx.Frame):
    def __init__(self, parent, id):
        wx.Frame.__init__(self, parent, id)
        self.Media = wx.media.MediaCtrl(self, style=wx.SIMPLE_BORDER)
        videoPath = "/Users/sherylhsu/Documents/sadf.mp4"
        self.Media.Load(videoPath)
        self.Media.Play()
        self.Show()

app = wx.App(redirect=False)
video = Video(None, wx.ID_ANY)
app.MainLoop()

或保留现有代码,只需将qazxsw poi移动到qazxsw poi类。

Show

注意:如果你不给Video一个import wx import wx.media class Video(wx.Panel): def __init__(self, parent, id): wx.Panel.__init__(self, parent, id) self.Media = wx.media.MediaCtrl(self, style=wx.SIMPLE_BORDER) videoPath = "/Users/sherylhsu/Documents/sadf.mp4" self.Media.Load(videoPath) self.Media.Play() self.Show() app = wx.App(redirect=False) mainFrame = wx.Frame(None, title="Temp") video = Video(mainFrame, wx.ID_ANY) app.MainLoop() ,它会选择最合适的。

© www.soinside.com 2019 - 2024. All rights reserved.