2013-08-03 71 views
0

我用一個漂亮的GUI製作了一個終端應用程序。現在我正嘗試使用python vlc綁定從這個應用程序播放視頻。問題是,當我嘗試所有的錯誤轉儲到終端,徹底毀了接口。Python vlc綁定輸出錯誤

有沒有什麼辦法可以隱藏VLC使用它綁定的錯誤?

一個啓動VLC的代碼如下:

inst = vlc.Instance('-q') 
media = inst.media_new(vidUrl) 
player = inst.media_player_new(vidUrl) 
player.play() 

有沒有辦法可以解決錯誤,因爲它是由於正在直播的videofiles,但服務器是一個有點靠不住。

+0

請參閱http://stackoverflow.com/questions/5081657/how-do-i-prevent-ac-shared-library-to-print-on-stdout-in-python – kraymer

回答

0

這將關閉從打印到終端的python錯誤。確保你只包裹你不想印刷的東西。

import sys 
class NullOutput(): 
    def write(self, s): 
     pass #Don't do anything 

def shutup(): 
    orig = sys.stdout #Save original output 
    sys.stdout = NullOutput() #set standard output to nothing 
    return orig 

def talk(orig): 
    sys.stdout = orig #Reset standard output 


orig = shutup() 
dostuff() 
talk() 
+0

我想這一點,我甚至試圖用STDERR做同樣的事情。 vlc綁定似乎忽略它,這可能是因爲它基於ctypes,並沒有阻止。 –