2011-10-06 47 views
2

我是wxPython的新手,我必须编写一个代码,可以在加载文件后立即开始播放视频。我经历了很多试图实现10-20代码的论坛,但是wx.media根本没有播放视频文件。我能够加载文件但不能播放它。加载wmv文件后在wx.Media中播放视频的代码

我需要一个简单的代码,我将手动输入视频文件的路径名称,并且在加载此文件后,它应该开始播放。

我使用的是Windows XP,Python 2.7和用于Python 2.7的wxPython。

如果你能帮我解决这个问题,我将非常感谢大家。

下面是我使用的负载()代码,然后播放()文件。它仍然没有工作。

import wx 
import wx.media 

class TestPanel(wx.Panel): 

    def __init__(self, parent): 

     wx.Panel.__init__(self, parent, -1, style=wx.TAB_TRAVERSAL|wx.CLIP_CHILDREN) 

     # Create some controls 
     try: 
      self.mc = wx.media.MediaCtrl(self, style=wx.SIMPLE_BORDER) 
     except NotImplementedError: 
      self.Destroy() 
      raise 
     self.mc.Load(r"C:\Documents and Settings\N1002401B\Desktop\test1.wmv") 
     #self.slider.SetRange(0, self.mc.Length()) 
     #folder, filename = os.path.split("C:\Documents and Settings\N1002401B\Desktop\test1.wmv") 
     self.Bind(wx.media.EVT_MEDIA_LOADED, self.OnPlay) 
    def OnPlay(self,evt): 
     self.mc.Play() 

app = wx.App(0) 

frame = wx.Frame(None) 
panel = TestPanel(frame) 
frame.Show() 

app.MainLoop() 

感谢你。

回答

0

你可以找到wx.media模块here的教程。

您必须致电Load(path)Play()您的MediaCtrl对象。

这对未来的帖子来说是一个好主意,可以包含一小段代码,这样我们就可以知道你所尝试的是什么。

+0

我在问题中添加了一段代码。你能告诉我代码中出了什么问题吗?为什么我没有收到任何错误,但仍然看不到正在播放的wmv文件? –

+0

我修改了我的代码。现在我可以播放声音,但视频不会出现在背景中。 –

+0

你的代码似乎正确。也许你正在使用虚假视频格式?尝试使用其他视频,特别是当您可以听到声音但看不到视频时。 – Constantinius