libvlc-在视频之间保持窗口打开



我在libvlc周围使用python包装器来播放视频。问题是,在我停止以前的视频播放并开始播放新的视频后,窗口会重新打开。我正在努力实现窗口仍然打开的状态,我可以在这个窗口中更改视频,而不需要后面的桌面闪烁。

import time
import vlc

i = vlc.Instance()
media_player = i.media_player_new()
media_player.set_fullscreen(True)
m1 = i.media_new('vid1.mp4')
m2 = i.media_new('vid2.mp4')
media_player.set_media(m1)
media_player.play()
time.sleep(5)
media_player.stop()

media_player.set_media(m2)
media_player.play()
time.sleep(5)
media_player.stop()

我也尝试过使用set_xwindow()函数,但没有成功。

谢谢你的预付款。

如果不指定窗口,libvlc将创建(我想是关闭(窗口。

您应该告诉libvlc要使用哪个窗口。你如何做到这一点取决于你使用的平台。

  • 在Linux上,将libvlc_media_player_set_xwindow与窗口句柄一起使用
  • 在Windowslibvlc_media_player_set_hwnd
  • 在macOS上,这是libvlc_media_player_set_nsobject

这将允许您使用任何给定的窗口进行连续回放。

我认为这解决了的问题

hwnd = player.get_hwnd()
player.set_hwnd(hwnd)

最新更新