0

这个问题与Open video in vlc on specific monitor非常相似。但是我没有找到可行的解决方案。

我的问题:我想同时显示 opencv 内容(图像 + 其他数据)和视频。主要是 opencv 内容将使用 opencv 窗口(主要是全屏)显示,但应用程序中会出现一些视频,我也在寻找一种解决方案来查看这些视频。我尝试使用 cv.VideoCapture()。这可行,但看起来很生涩。因此,我通过在全屏模式下使用 vlc 实例来寻找替代方案。我已经尝试过使用subprocess.Popen(). 这也有效 - 但我希望 python 不要等待 vlc,因为我希望能够使用 python 中的按钮跳过视频。并且在开始播放视频后,除了使用终止()停止 vlc 之外,我没有再次访问 vlc 播放器。这似乎可行,但我觉得一次又一次地击落 vlc 并不是一个好主意。也许我错了。我也尝试过使用 python-vlc.lib 的另一种方式。开始视频不是问题。到达终点后,最后一帧仍然可见,这一切都很好。但是 Windows 总是在第一个显示器上启动。而且在搜索了几个小时后 - 我没有找到一种工作方式将输出发送到另一台显示器。有些人告诉在启动实例时添加一个选项,例如:

vlc_instance = vlc.Instance('--directx-device={,display,\\.\DISPLAY1}')

我没有收到错误,但该选项将被忽略(添加'--fullscreen'也将被忽略)。我发现的另一个建议是:

vlc_instance = vlc.Instance('--x11-display', ':1')

这会导致“NoneType"错误,因为'--x11-display'显然是未知的。最后我真的不明白vlc_instance. 有任何想法吗?

4

0 回答 0