我想使用libVCL在我的游戏中显示视频,但是当游戏全屏时我使用HWND时出现问题,全屏表面与视频重叠。
我确实有D3DDevice手柄可用,因此视频可以在游戏界面内绘制。 但我发现的只有libvlc_media_player_set_hwnd(),而不是将视频表面传递到游戏界面进行绘图的方法。有没有办法/例子呢?
答案 0 :(得分:1)
LibVLC中没有这样的功能。
我认为您需要使用视频格式回调并自行将视频缓冲区渲染为纹理。这就是我使用的方法(例如,来自Java和JMonkeyEngine)。
请参阅libvlc_video_set_callbacks,libvlc_video_set_format和libvlc_video_set_format_callbacks。
我已经看到这会平滑地播放全高清,但这会比使用VLC直接渲染到视频表面消耗更多的CPU。