gpt4 book ai didi

python - vlc mac python 绑定(bind)视频输出和 vlc.py 的位置

转载 作者:太空狗 更新时间:2023-10-30 03:00:31 27 4
gpt4 key购买 nike

我希望有人可以帮助解决 Python 绑定(bind)输出问题(使用 vlc.py)

我有一个使用 vlc.py 的基本测试脚本,它运行但不播放视频。

import vlc

def setup_player(filename):
vlc_instance = vlc.Instance('--no-audio', '--fullscreen')
player = vlc_instance.media_player_new()
media = vlc_instance.media_new(filename)
player.set_media(media)
print media.get_mrl() # File location to get title
print player.get_length() #Time duration of file -1 means there is no media
print player.get_state() #Player's state
player.play()

setup_player('foo.mp4')

这输出

file:///Users/admin/Sites/pythontest/foo.mp4
-1
State.NothingSpecial

我不确定在哪里安装 vlc.py 模块,希望有人能提供帮助。我在 MacOs、VLC 2.0.9、Python 2.7.3 上。通过终端运行 python。

目前,我的 vlc.py 模块与我的测试脚本位于同一目录中 - 在 VLC.app 目录之外,虽然脚本执行时没有错误,但它没有播放视频或返回任何参数指定的 mp4 文件。

为一个平庸的问题道歉!非常感谢收到任何帮助。

最佳答案

似乎 player.play()函数没有阻塞,而是立即返回。

如果 Python 脚本随后终止,播放器将在创建后立即销毁。

如果您查看 example player in vlc.py , 它有一个 while True在最后循环,基本上一遍又一遍地读取按键,以实现一个简单的用户界面。

所以如果你简单地添加

while True:
pass

在你的函数结束时,它应该继续播放(用 CTRL+C 终止,直到你实现某种用户输入处理)。

至于“安装”脚本:不幸的是,vlc.py他们提供的模块只是一个简单的独立 Python 模块。它没有打包为您可以使用 pip 安装的 setuptools 发行版或 easy_install像大多数其他 Python 模块一样。这意味着您可以(或者更确切地说必须)将其放入将位于 sys.path 中的位置。自己。

您启动脚本的当前工作目录适用于此,但如果您想要一个更永久的位置,您可以将其放入 Python 的 site-packages 中。 (例如,如果您使用的是标准 OS X 框架 Python,则为 /Users/<your-username>/Library/Python/2.7/lib/python/site-packages)。

关于python - vlc mac python 绑定(bind)视频输出和 vlc.py 的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28974953/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com