修改视频帧并将其发送回视频输出流

时间:2019-04-10 03:21:36

标签: c++ qt

我目前正在尝试使用QT解决C ++中的问题。 我试图从QMediaPlayer的输出流中运行的视频中获取视频帧,并将灰度添加到该帧,然后将其发送回mediaplayer的视频输出流。

灰度视频帧---->向帧添加灰度---->发送回输出流

现在,我可以使用QT中的QVideoFrame捕获videoFrame并对其进行修改。但是我不确定如何将其发送回媒体播放器输出流。我正在查看QT源代码,但到目前为止没有运气。

使用QML可以解决相同的问题,但是我不想继续使用QML而是使用C ++来解决这个问题。

我希望这里有人对如何实现有一个想法。 谢谢

1 个答案:

答案 0 :(得分:0)

使用QAbstractVideoSurface

引用文档:

  

QAbstractVideoSurface类定义了视频制作人员用来与视频表示图面进行互操作的标准接口。您可以将此接口子类化,以接收来自解码媒体或摄像机等来源的视频帧,以执行自己的处理。

此外,here是您如何使用此类的快速概述。