直接传winID的方式就不介绍了,VLC-Qt自带的demo(SimplePlayer)使用的就是这种方式
本文在SimplePlayer的基础上修改,这里抽帧后(YUV格式),使用QOpenGLWidget渲染,并在图像上画一个正方形,放置一个半透明按钮
一.效果
二.原理
VLC-Qt中处理视频时需要的几个类:
VlcMedia(标识一个可播放的媒体,可以设置option参数)
VlcMediaPlayer(播放控制)
VlcVideoStream(视频抽帧)
VlcWidgetVideo(显示视频的控件)
VlcWidgetVideo在VLCQtWidgets.lib中,如果我们不用VLCQtWidgets.lib,可以参考该类继承QFrame和VlcVideoDelegate去实现自己的视频显示类。
视频抽帧:
VlcVideoStream通过设置回调以从libVLC获取YUV帧,我们要做的就是从VlcVideoStream派生一个类ÿ