linux qt yuv,c – 如何使用Qt中的RGBA32数据将带有YUV数据...
我找到了一個內置于Qt5的解決方案,但是不受Qt的支持.
以下是如何進行的:
>將QT = multimedia-private放入qmake .pro文件中
>將#include“private / qvideoframe_p.h”放入代碼中以使該功能可用.
>您現在可以訪問具有以下簽名的函數:QImage qt_imageFromVideoFrame(const QVideoFrame& frame);
>使用該函數將QVideoFrame轉換為臨時QImage,然后從該圖像創建輸出QVideoFrame.
這是我的示例用法:
QVideoFrame convertFormat(const QVideoFrame &inputframe, QVideoFrame::PixelFormat outputFormat)
{
inputframe->map(QAbstractVideoBuffer::ReadOnly);
QImage tempImage=qt_imageFromVideoFrame(inputframe);
inputframe->unmap();
QVideoFrame outputFrame=QVideoFrame(tempImage);
return outputFrame;
}
同樣,從標頭復制的警告內容如下:
06001
這在我的項目中無關緊要,因為它是個人玩具產品.如果它變得嚴重我將只追蹤該功能的實現并將其復制到我的項目或其他東西.
總結
以上是生活随笔為你收集整理的linux qt yuv,c – 如何使用Qt中的RGBA32数据将带有YUV数据...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mybatis insert插入成功返回
- 下一篇: 查找算法——二分法