繁体   English   中英

如何从 Python 3 中的 vlc 模块中使控制台 output 静音

[英]How to silence console output from vlc module in Python 3

(Xubuntu 18.04, Python 3.6.9)

我正在为自己开发一个小应用程序,非常简单地使用 vlc 模块。 这是一个使用curses的基于控制台的应用程序,vlc在我的终端界面中间插入了它的output。 我不知道如何让它静音。 已阅读 libvlc 文档,我找不到任何关于它的信息。 尝试过这个类似问题的建议,设置sys.stderr = open('stderr.txt', 'w+')后没有成功。 无法在 libvlc 文档或运行vlc -H中找到任何内容。 我真的不在乎我是否能够访问 output; 我只需要它不在控制台中打印。

这是我所有与 VLC 相关的代码,在这种情况下可能不需要:

def vlc_init():
    global vlc_instance, media_player
    vlc_instance = vlc.Instance('--no-xlib') # VLC asked me to pass '--no-xlib' *shrug*
    media_player = vlc_instance.media_player_new()

def set_new_media(media_path):
    media = vlc_instance.media_new(media_path)
    media_player.set_media(media)

有谁知道我能做什么?

vlc -H

Console logger (console)
 -q, --quiet, --no-quiet        Be quiet
                      (default disabled)
   Turn off all messages on the console.

所以是的,只需在启用这些标志之一的情况下调用您的 vlc 实例,并将 stderr 重定向到/dev/null即可。
vlc_instance = vlc.Instance('--no-xlib -q > /dev/null 2>&1')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM