Images into video streams (Matt Clark)

Aleksandar Topic aleks at
Thu Mar 10 09:33:04 UTC 2022

As stated in MR #1547, imagefreeze by itself is also dependent on both
format and bit depth.
So the CAPS could very likely be the issue. You could quickly test this
using a videoconvert.
Knowing whether this solves your negotiation problem, you should be able to
set CAPS explicitly to do a proper solution.

Best regards / Med venlig hilsen

Aleksandar Topic

On Thu, 10 Mar 2022 at 09:59, Marianna Smidth Buschle via gstreamer-devel <
gstreamer-devel at> wrote:

> Hi,
> You have a non-negotiated error, that means you have problems with the
> So you need to investigate that.
> Try running with: GST_DEBUG=*:3,GST_CAPS:5
> In order to get more information about the CAPS available and trying to be
> negotiated.
> Also, I vaguely recall some cases where you might need to specify the CAPS
> in the input and output of the compositor to get it to work properly.
> Best Regards
> Marianna
> On 08.03.2022 22.32, gstreamer-devel-request at wrote:
> (Sorry if this duplicates, I thought I had fully signed up for the mailing
> list before trying to send this the first, but it seems it didn't
> go through. So now that I know I'm on the mailing list I hope this wont
> mess anything up.)
> *Context:* I'm making a server that composites various sources of media
> into a video stream(like a 2x2 grid from different sources for instance)
> and supports multiple streams at the same time (including being able to
> update those pipelines dynamically with web calls in the future). One
> source is an image(image/png) that gets generated upon request by a
> separate microservice. I was trying to use an Appsrc to pull the image and
> then push it into a PngDec --> ImageFreeze and then link that to the
> composite element with the sink properties for which part of the grid it
> should show on.
> I've got it pulling the image and pushing that buffer, but I'm getting the
> error below, and I'm not sure exactly what's causing it.
> *Questions:*
> 1. What do you think is happening and what's the best way to resolve it?
> 2. Is there a better way for me to do this?
> 3. Knowing that I plan to have multiple streams pulling from multiple
> sources and want to update them live, any pointers?
> *Error:*
> should have image
> should have image in pipeline: Ok
> Error from
> Some("/GstPipeline:pipeline_6be3b6be-0767-49db-a2b1-26708950261b/GstAppSrc:vsource0_top_left"):
> Internal data stream error. (Some("../libs/gst/base/gstbasesrc.c(3127):
> gst_base_src_loop ():
> /GstPipeline:pipeline_6be3b6be-0767-49db-a2b1-26708950261b/GstAppSrc:vsource0_top_left:\nstreaming
> stopped, reason not-negotiated (-4)"))
> --
> Best regards / Med venlig hilsen
> “Marianna Smidth Buschle”
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gstreamer-devel mailing list