diff --git a/sys/v4l2/gstv4l2object.c b/sys/v4l2/gstv4l2object.c index 84f2281f83..5f712ad914 100644 --- a/sys/v4l2/gstv4l2object.c +++ b/sys/v4l2/gstv4l2object.c @@ -1215,7 +1215,6 @@ gst_v4l2_object_get_caps_info (GstV4l2Object * v4l2object, GstCaps * caps, if (strcmp (mimetype, "video/mpegts") == 0) { fourcc = V4L2_PIX_FMT_MPEG; - outsize = 8192; *fps_n = 0; *fps_d = 1; goto done; diff --git a/sys/v4l2/gstv4l2src.c b/sys/v4l2/gstv4l2src.c index 7f2139a08e..7f211eeae5 100644 --- a/sys/v4l2/gstv4l2src.c +++ b/sys/v4l2/gstv4l2src.c @@ -800,6 +800,10 @@ gst_v4l2src_get_read (GstV4l2Src * v4l2src, GstBuffer ** buf) gint buffersize; buffersize = v4l2src->frame_byte_size; + /* In case the size per frame is unknown assume it's a streaming format (e.g. + * mpegts) and grab a reasonable default size instead */ + if (buffersize == 0) + buffersize = 8192; *buf = gst_buffer_new_and_alloc (buffersize);