videoparse: Fix property handling

Usage of GstValueArray was wrong and frame-stride does not exist in
rawvideoparse
This commit is contained in:
Thibault Saunier 2017-06-06 14:58:55 -04:00
parent d373c4478b
commit 1b8aa7578c

View file

@ -248,7 +248,7 @@ gst_video_parse_set_property (GObject * object, guint prop_id,
} }
case PROP_FRAMESIZE: case PROP_FRAMESIZE:
g_object_set (G_OBJECT (vp->rawvideoparse), "frame-stride", g_object_set (G_OBJECT (vp->rawvideoparse), "frame-size",
g_value_get_uint (value), NULL); g_value_get_uint (value), NULL);
break; break;
@ -319,30 +319,32 @@ gst_video_parse_get_property (GObject * object, guint prop_id, GValue * value,
} }
case PROP_STRIDES:{ case PROP_STRIDES:{
GValue array; GValue array = { 0, };
g_object_get (G_OBJECT (vp->rawvideoparse), "plane-strides", &array, g_value_init (&array, GST_TYPE_ARRAY);
NULL); g_object_get_property (G_OBJECT (vp->rawvideoparse), "plane-strides",
&array);
g_value_take_string (value, g_value_take_string (value,
gst_video_parse_int_valarray_to_string (&array)); gst_video_parse_int_valarray_to_string (&array));
break; break;
} }
case PROP_OFFSETS:{ case PROP_OFFSETS:{
GValue array; GValue array = { 0, };
g_object_get (G_OBJECT (vp->rawvideoparse), "plane-offsets", &array, g_value_init (&array, GST_TYPE_ARRAY);
NULL); g_object_get_property (G_OBJECT (vp->rawvideoparse), "plane-offsets",
&array);
g_value_take_string (value, g_value_take_string (value,
gst_video_parse_int_valarray_to_string (&array)); gst_video_parse_int_valarray_to_string (&array));
break; break;
} }
case PROP_FRAMESIZE:{ case PROP_FRAMESIZE:{
guint frame_stride; guint frame_size;
g_object_get (G_OBJECT (vp->rawvideoparse), "frame-stride", &frame_stride, g_object_get (G_OBJECT (vp->rawvideoparse), "frame-size", &frame_size,
NULL); NULL);
g_value_set_uint (value, frame_stride); g_value_set_uint (value, frame_size);
break; break;
} }
@ -401,7 +403,9 @@ gst_video_parse_int_valarray_to_string (GValue * valarray)
for (i = 0; i < gst_value_array_get_size (valarray); i++) { for (i = 0; i < gst_value_array_get_size (valarray); i++) {
const GValue *gvalue = gst_value_array_get_value (valarray, i); const GValue *gvalue = gst_value_array_get_value (valarray, i);
guint val = g_value_get_uint (gvalue); guint val;
val = g_value_get_int (gvalue);
g_snprintf (stride_str, sizeof (stride_str), "%u", val); g_snprintf (stride_str, sizeof (stride_str), "%u", val);
if (str == NULL) { if (str == NULL) {