|
|
1
2
我认为你误解了每个班级的角色。您正在将QAbstractVideoSurface子类化,它应该有助于访问准备好呈现的数据。在本方法中,您将获得一个已经解码的QVideoFrame。如果您想在屏幕上显示这个,那么您需要在VideoSurface类中实现它。 您可以在QMediaPlayer上设置VideoSurface,并且媒体播放器已经处理了视频的解码和像素格式的协商。您在当前的VideoSurface中收到的QVideoFrame已经具有媒体播放器提供的高度/宽度和像素格式。媒体播放器的典型用途是加载和解码文件,并在屏幕上显示一个视频小部件。 如果您需要使用自己定制的ffmpeg解码器,我的建议是将帧从yuv420转换为rgb(libswscale?),创建您自己的自定义小部件,您也可以传递帧数据,并且可以在加载到QPixmap后使用qpaiter在屏幕上呈现它。 |
|
|
Wolfspirit · 你如何确定一个时间点是否在一个时间段内? 2 年前 |
|
|
h-swell · QT——如何使用布局类? 2 年前 |
|
|
LeftFrog · Qt中macOS上的按钮颜色不变 2 年前 |
|
|
Bobby · Qt是否与RAII设计模式不兼容? 2 年前 |
|
|
Harvey · 如何更改Qt Creator配置项目的默认套件? 2 年前 |