qtの可視ウィジェットにビデオ出力(フレームのシーケンス)を作成しようとしています。最初はQLabelで十分だと思っていましたが…間違っていました。ピックスマップへの変換は、大きな画像(たとえば1080p)のプロセッサには過負荷になりすぎます。
他の解決策はありますか?(QLabelではありませんか?)
1フレームのコード例:
QImage m_outputFrameImage(width, height, QImage::Format_RGB888);
memcpy(m_outputFrameImage.bits(), m_frameRGB->data[0], height * width * 3);
QPixmap pixmap = QPixmap::fromImage(m_outputFrameImage); // BAD, slow and high load
/* Bad too (Same code?)
QPainter painter;
painter.begin(&pixmap);
painter.drawImage(0, 0, m_outputFrameImage);
painter.end();
*/
labelVideo->setPixmap(pixmap);