diff options
Diffstat (limited to 'gst-libs/gst/gl/gstglupload.c')
-rw-r--r-- | gst-libs/gst/gl/gstglupload.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gst-libs/gst/gl/gstglupload.c b/gst-libs/gst/gl/gstglupload.c index 926191410..0addca112 100644 --- a/gst-libs/gst/gl/gstglupload.c +++ b/gst-libs/gst/gl/gstglupload.c @@ -714,6 +714,8 @@ static struct RawUploadFrame * _raw_upload_frame_new (struct RawUpload *raw, GstBuffer * buffer) { struct RawUploadFrame *frame; + GstVideoInfo *info; + gint i; if (!buffer) return NULL; @@ -728,6 +730,14 @@ _raw_upload_frame_new (struct RawUpload *raw, GstBuffer * buffer) } raw->upload->priv->in_info = frame->frame.info; + info = &raw->upload->priv->in_info; + + /* Recalculate the offsets (and size) */ + info->size = 0; + for (i = 0; i < GST_VIDEO_INFO_N_PLANES (info); i++) { + info->offset[i] = info->size; + info->size += gst_gl_get_plane_data_size (info, NULL, i); + } return frame; } |