change caps for image & imagefreeze

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

change caps for image & imagefreeze

art vanderhoff
Hi All,

I have some code that works fine with video streams but when I use a
pngdec as the source I can not change the caps, gives error of

GStreamer-CRITICAL **: gst_pad_set_caps: assertion `caps == NULL ||
gst_caps_is_fixed (caps)' failed
Error: code=3 message=not negotiated

if the caps is set to the png actual input size it passes through with no
error - ie the actual size is 300x169, in the below code the caps of
100x100 triggers the error (pls note this is the java code but I am sure
you get the drift!)


Element source = ElementFactory.make("filesrc", "source");
Element vparse = ElementFactory.make("pngdec", "vparse");
Element frz1 = ElementFactory.make("imagefreeze", "frz1");
Element ffcs1 = ElementFactory.make("ffmpegcolorspace", "ffcs1");
Element vidsc1 = ElementFactory.make("videoscale", "vidsc1");
Element capsfilter1 = ElementFactory.make("capsfilter", "filter1");
capsfilter1.setCaps(Caps.fromString("video/x-raw-yuv, format=(fourcc)AYUV,
width=100, height=100, framerate=30/1,bpp=16, depth=16 "));

I am also adding this source to a videomixer2 overlay hence the cpas ayuv

any thoughts on how I can change the size?

thx
Art

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: change caps for image & imagefreeze

Stefan Sauer
On 03/22/2012 10:29 AM, [hidden email] wrote:

> Hi All,
>
> I have some code that works fine with video streams but when I use a
> pngdec as the source I can not change the caps, gives error of
>
> GStreamer-CRITICAL **: gst_pad_set_caps: assertion `caps == NULL ||
> gst_caps_is_fixed (caps)' failed
> Error: code=3 message=not negotiated
>
> if the caps is set to the png actual input size it passes through with no
> error - ie the actual size is 300x169, in the below code the caps of
> 100x100 triggers the error (pls note this is the java code but I am sure
> you get the drift!)
>
>
> Element source = ElementFactory.make("filesrc", "source");
> Element vparse = ElementFactory.make("pngdec", "vparse");
> Element frz1 = ElementFactory.make("imagefreeze", "frz1");
> Element ffcs1 = ElementFactory.make("ffmpegcolorspace", "ffcs1");
> Element vidsc1 = ElementFactory.make("videoscale", "vidsc1");
> Element capsfilter1 = ElementFactory.make("capsfilter", "filter1");
> capsfilter1.setCaps(Caps.fromString("video/x-raw-yuv, format=(fourcc)AYUV,
> width=100, height=100, framerate=30/1,bpp=16, depth=16 "));
>
> I am also adding this source to a videomixer2 overlay hence the cpas ayuv

How are the element linked? Is it source ! vparse ! frz1 ! ffcs1 !
vidscl ! capsfilter1 ? That should actually work.

Stefan
> any thoughts on how I can change the size?
>
> thx
> Art
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: change caps for image & imagefreeze

art vanderhoff
Hi Stefan,

Confirming that is the correct pipeline and error still persists, but only
for image + imagefreeze, any video src(videoparse+imagefreeze) that goes
through imagefreeze re-sizes fine.

I have tried two caps in the pipe, the first to change format into AYUV
then the second to change size, but again same error.


Can you suggest a way to force the format before the size change in case
this is the issue?

deb squeezy 64
gst-inspect-0.10 version 0.10.35

thx
Art

> On 03/22/2012 10:29 AM, [hidden email] wrote:
>> Hi All,
>>
>> I have some code that works fine with video streams but when I use a
>> pngdec as the source I can not change the caps, gives error of
>>
>> GStreamer-CRITICAL **: gst_pad_set_caps: assertion `caps == NULL ||
>> gst_caps_is_fixed (caps)' failed
>> Error: code=3 message=not negotiated
>>
>> if the caps is set to the png actual input size it passes through with
>> no
>> error - ie the actual size is 300x169, in the below code the caps of
>> 100x100 triggers the error (pls note this is the java code but I am sure
>> you get the drift!)
>>
>>
>> Element source = ElementFactory.make("filesrc", "source");
>> Element vparse = ElementFactory.make("pngdec", "vparse");
>> Element frz1 = ElementFactory.make("imagefreeze", "frz1");
>> Element ffcs1 = ElementFactory.make("ffmpegcolorspace", "ffcs1");
>> Element vidsc1 = ElementFactory.make("videoscale", "vidsc1");
>> Element capsfilter1 = ElementFactory.make("capsfilter", "filter1");
>> capsfilter1.setCaps(Caps.fromString("video/x-raw-yuv,
>> format=(fourcc)AYUV,
>> width=100, height=100, framerate=30/1,bpp=16, depth=16 "));
>>
>> I am also adding this source to a videomixer2 overlay hence the cpas
>> ayuv
>
> How are the element linked? Is it source ! vparse ! frz1 ! ffcs1 !
> vidscl ! capsfilter1 ? That should actually work.
>
> Stefan
>> any thoughts on how I can change the size?
>>
>> thx
>> Art
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> [hidden email]
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.o

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: change caps for image & imagefreeze

art vanderhoff
In reply to this post by Stefan Sauer
Hi Stefan,

Confirming that is the correct pipeline and error still persists, but only
for image + imagefreeze, any video src(videoparse+imagefreeze) that goes
through imagefreeze re-sizes fine.

I have tried two caps in the pipe, the first to change format into AYUV
then the second to change size, but again same error.


Can you suggest a way to force the format before the size change in case
this is the issue?

deb squeezy 64
gst-inspect-0.10 version 0.10.35

thx
Art

> On 03/22/2012 10:29 AM, [hidden email] wrote:
>> Hi All,
>>
>> I have some code that works fine with video streams but when I use a
>> pngdec as the source I can not change the caps, gives error of
>>
>> GStreamer-CRITICAL **: gst_pad_set_caps: assertion `caps == NULL ||
>> gst_caps_is_fixed (caps)' failed
>> Error: code=3 message=not negotiated
>>
>> if the caps is set to the png actual input size it passes through with
>> no
>> error - ie the actual size is 300x169, in the below code the caps of
>> 100x100 triggers the error (pls note this is the java code but I am sure
>> you get the drift!)
>>
>>
>> Element source = ElementFactory.make("filesrc", "source");
>> Element vparse = ElementFactory.make("pngdec", "vparse");
>> Element frz1 = ElementFactory.make("imagefreeze", "frz1");
>> Element ffcs1 = ElementFactory.make("ffmpegcolorspace", "ffcs1");
>> Element vidsc1 = ElementFactory.make("videoscale", "vidsc1");
>> Element capsfilter1 = ElementFactory.make("capsfilter", "filter1");
>> capsfilter1.setCaps(Caps.fromString("video/x-raw-yuv,
>> format=(fourcc)AYUV,
>> width=100, height=100, framerate=30/1,bpp=16, depth=16 "));
>>
>> I am also adding this source to a videomixer2 overlay hence the cpas
>> ayuv
>
> How are the element linked? Is it source ! vparse ! frz1 ! ffcs1 !
> vidscl ! capsfilter1 ? That should actually work.
>
> Stefan
>> any thoughts on how I can change the size?
>>
>> thx
>> Art
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> [hidden email]
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> http://lists.freedesktop.o

_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel