diff --git a/gst-libs/gst/gl/gstglcolorconvert.c b/gst-libs/gst/gl/gstglcolorconvert.c index fff17442d7..be32fb8063 100644 --- a/gst-libs/gst/gl/gstglcolorconvert.c +++ b/gst-libs/gst/gl/gstglcolorconvert.c @@ -461,12 +461,18 @@ gst_gl_color_convert_finalize (GObject * object) static gboolean _gst_gl_color_convert_init_format_unlocked (GstGLColorConvert * convert, - GstVideoInfo in_info, GstVideoInfo out_info) + GstVideoInfo * in_info, GstVideoInfo * out_info) { g_return_val_if_fail (convert != NULL, FALSE); - g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (&in_info) != + g_return_val_if_fail (in_info, FALSE); + g_return_val_if_fail (out_info, FALSE); + g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (in_info) != GST_VIDEO_FORMAT_UNKNOWN, FALSE); - g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (&in_info) != + g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (in_info) != + GST_VIDEO_FORMAT_ENCODED, FALSE); + g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (out_info) != + GST_VIDEO_FORMAT_UNKNOWN, FALSE); + g_return_val_if_fail (GST_VIDEO_INFO_FORMAT (out_info) != GST_VIDEO_FORMAT_ENCODED, FALSE); if (convert->initted) { @@ -475,8 +481,8 @@ _gst_gl_color_convert_init_format_unlocked (GstGLColorConvert * convert, convert->initted = TRUE; } - convert->in_info = in_info; - convert->out_info = out_info; + convert->in_info = *in_info; + convert->out_info = *out_info; gst_gl_context_thread_add (convert->context, (GstGLContextThreadFunc) _init_convert, convert); @@ -496,7 +502,7 @@ _gst_gl_color_convert_init_format_unlocked (GstGLColorConvert * convert, */ gboolean gst_gl_color_convert_init_format (GstGLColorConvert * convert, - GstVideoInfo in_info, GstVideoInfo out_info) + GstVideoInfo * in_info, GstVideoInfo * out_info) { gboolean ret; diff --git a/gst-libs/gst/gl/gstglcolorconvert.h b/gst-libs/gst/gl/gstglcolorconvert.h index af6f4c509f..9b416a5cae 100644 --- a/gst-libs/gst/gl/gstglcolorconvert.h +++ b/gst-libs/gst/gl/gstglcolorconvert.h @@ -102,8 +102,8 @@ struct _GstGLColorConvertClass GstGLColorConvert * gst_gl_color_convert_new (GstGLContext * context); gboolean gst_gl_color_convert_init_format (GstGLColorConvert * convert, - GstVideoInfo in_info, - GstVideoInfo out_info); + GstVideoInfo * in_info, + GstVideoInfo * out_info); void gst_gl_color_convert_set_texture_scaling (GstGLColorConvert * convert, gfloat scaling[GST_VIDEO_MAX_PLANES][2]); diff --git a/gst-libs/gst/gl/gstgldownload.c b/gst-libs/gst/gl/gstgldownload.c index f0fcb5f7b8..fd8216e1d9 100644 --- a/gst-libs/gst/gl/gstgldownload.c +++ b/gst-libs/gst/gl/gstgldownload.c @@ -339,8 +339,8 @@ _init_download (GstGLContext * context, GstGLDownload * download) out_height); download->priv->result = - gst_gl_color_convert_init_format (download->convert, in_info, - download->info); + gst_gl_color_convert_init_format (download->convert, &in_info, + &download->info); if (!download->priv->result) return; diff --git a/gst-libs/gst/gl/gstglupload.c b/gst-libs/gst/gl/gstglupload.c index e94862c6d9..438f62f1c6 100644 --- a/gst-libs/gst/gl/gstglupload.c +++ b/gst-libs/gst/gl/gstglupload.c @@ -590,8 +590,8 @@ _init_upload (GstGLContext * context, GstGLUpload * upload) GST_VIDEO_INFO_WIDTH (&upload->in_info), GST_VIDEO_INFO_HEIGHT (&upload->in_info)); - if (!gst_gl_color_convert_init_format (upload->convert, upload->in_info, - out_info)) + if (!gst_gl_color_convert_init_format (upload->convert, &upload->in_info, + &out_info)) goto error; upload->priv->result = TRUE;