|
@@ -23,12 +23,19 @@ PlayerGLWidget::~PlayerGLWidget()
|
|
|
/* 显示RGBA图片 */
|
|
|
void PlayerGLWidget::showOneRGBAImage(const QImage& image)
|
|
|
{
|
|
|
+ if(!m_isInit)
|
|
|
+ {
|
|
|
+ SPDLOG_WARN("OpenGLWidget未初始化");
|
|
|
+ return;
|
|
|
+ }
|
|
|
if(image.format() == QImage::Format_RGBA8888)
|
|
|
{
|
|
|
m_shaderRGBA->refreshFrameRGBA(image);
|
|
|
} else
|
|
|
{
|
|
|
QImage imageRGBA = image.convertToFormat(QImage::Format_RGBA8888);
|
|
|
+ // SPDLOG_DEBUG("image format {}", (int)image.format());
|
|
|
+ // SPDLOG_DEBUG("{}", imageRGBA.isNull());
|
|
|
m_shaderRGBA->refreshFrameRGBA(imageRGBA);
|
|
|
}
|
|
|
|
|
@@ -39,6 +46,12 @@ void PlayerGLWidget::showOneRGBAImage(const QImage& image)
|
|
|
/* 显示一张YUV420的图片 */
|
|
|
void PlayerGLWidget::showOneYUV420Image(const Image_YUV420& yuvData)
|
|
|
{
|
|
|
+ if(!m_isInit)
|
|
|
+ {
|
|
|
+ SPDLOG_WARN("OpenGLWidget未初始化");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if(!yuvData.isValid()) {
|
|
|
SPDLOG_WARN("YUV420数据无效");
|
|
|
return;
|
|
@@ -118,6 +131,7 @@ void PlayerGLWidget::initializeGL()
|
|
|
|
|
|
|
|
|
SPDLOG_DEBUG("着色器编译完成");
|
|
|
+ m_isInit = true; // 标记OpenGL已经初始化完成
|
|
|
}
|
|
|
|
|
|
void PlayerGLWidget::resizeGL(int w, int h)
|