caps parsing error in gst.parse_launch

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

caps parsing error in gst.parse_launch

Florent THIERY-2
Hello,

I have an issue about caps declaration.

My project (gst-gengui) is intended to be used in the same fashion as
gst-launch. In other terms, my app gets all the arguments (argv) and
concanetes them to form the same string as in command line. Then,
gst.parse_launch launches the pipeline from the description. The
problem is that if the string contains some "capsfilter
caps='video/x-h264...' " there is a caps parsing error.

The only workaround i could find is to specify the caps somewhere
else, create them and set them as property :
1) cap = gst.caps_from_string(caps_string)
2) capsfilter.set_property("caps",cap)

I don't know why, but syntax is different for gst-gengui command line
usage and in the config file.

In config file, what works (no double quotes between caps) is
declaring the description as follows (no quotes, no named capsfilter
element):
pipeline_desc = "videotestsrc ! video/x-raw-yuv, format=(fourcc)YUY2,
width=(int)320, height=(int)240, framerate=(fraction)15/1 !
ffmpegcolorspace !  videobalance ! queue ! xvimagesink"

command line equivalent (quotes needed):
gst-gengui videotestsrc ! "video/x-raw-yuv, format=(fourcc)YUY2,
width=(int)320, height=(int)240, framerate=(fraction)50/1" ! queue !
xvimagesink

whereas gst-launch can work with
- video/x-raw-rgb
- "video/x-raw-rgb"
- capsfilter caps="video/x-raw-rgb"

I would be happy to find a nicer workaround than parsing the
description string for caps and setting the caps by hand, or defining
drastic declaration conventions...

Regards,

Florent

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: caps parsing error in gst.parse_launch

Stefan Sauer
Florent schrieb:

> Hello,
>
> I have an issue about caps declaration.
>
> My project (gst-gengui) is intended to be used in the same fashion as
> gst-launch. In other terms, my app gets all the arguments (argv) and
> concanetes them to form the same string as in command line. Then,
> gst.parse_launch launches the pipeline from the description. The
> problem is that if the string contains some "capsfilter
> caps='video/x-h264...' " there is a caps parsing error.

Please tell us what error you get :)

Stefan

>
> The only workaround i could find is to specify the caps somewhere
> else, create them and set them as property :
> 1) cap = gst.caps_from_string(caps_string)
> 2) capsfilter.set_property("caps",cap)
>
> I don't know why, but syntax is different for gst-gengui command line
> usage and in the config file.
>
> In config file, what works (no double quotes between caps) is
> declaring the description as follows (no quotes, no named capsfilter
> element):
> pipeline_desc = "videotestsrc ! video/x-raw-yuv, format=(fourcc)YUY2,
> width=(int)320, height=(int)240, framerate=(fraction)15/1 !
> ffmpegcolorspace !  videobalance ! queue ! xvimagesink"
>
> command line equivalent (quotes needed):
> gst-gengui videotestsrc ! "video/x-raw-yuv, format=(fourcc)YUY2,
> width=(int)320, height=(int)240, framerate=(fraction)50/1" ! queue !
> xvimagesink
>
> whereas gst-launch can work with
> - video/x-raw-rgb
> - "video/x-raw-rgb"
> - capsfilter caps="video/x-raw-rgb"
>
> I would be happy to find a nicer workaround than parsing the
> description string for caps and setting the caps by hand, or defining
> drastic declaration conventions...
>
> Regards,
>
> Florent
>
> ------------------------------------------------------------------------------
> Stay on top of everything new and different, both inside and
> around Java (TM) technology - register by April 22, and save
> $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
> 300 plus technical and hands-on sessions. Register today.
> Use priority code J9JMT32. http://p.sf.net/sfu/p
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: caps parsing error in gst.parse_launch

Florent THIERY-2
> Please tell us what error you get :)

in e.g ipython:

: import gst
: pipeline_desc = "videotestsrc ! capsfilter caps='video/x-raw-yuv,
format=(fourcc)YUY2, width=(int)320, : height=(int)240,
framerate=(fraction)15/1' ! ffmpegcolorspace !  videobalance ! queue !
xvimagesink"
: p = gst.parse_launch(pipeline_desc)

<class 'gobject.GError'>: impossible de définir la propriété « caps »
de l'élément « capsfilter0 » à « 'video/x-raw-yuv,
format=(fourcc)YUY2, width=(int)320, height=(int)240,
framerate=(fraction)15/1' »

Thanks,

FLo

------------------------------------------------------------------------------
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel