[gst-devel] Setting pad properties at commandline
Sameer Naik
sameer at damagehead.com
Fri Oct 19 14:28:23 CEST 2007
hi,
i have registered the GstChildProxy interface on the videomixer.
the get_child_by_index and get_children_count have also been implemented
now the gst-inspect videomixer include shows the following lines
Implemented Interfaces:
GstChildProxy
next, whenever a new sink pad is added to the videomixer element
gst_child_proxy_child_added() is called and when a pad is removed
gst_child_proxy_child_removed() is called.
now if i execute the pipeline:
gst-launch videomixer name=mix sink_1::xpos=0 ! ffmpegcolorspace !
xvimagesink videotestsrc ! mix.sink_1
i get the following error message
"WARNING: erroneous pipeline: no property "sink_1::xpos" in element
"mix""
and the pipeline exits.
on debugging i have found that the _child_count is queried before the
pad is added to the element, as a result _child_count returns 0.
is there a way to wait until all pads are generated, before any
properties are set on the element and thus its children..
~sameer
On Thu, 2007-10-18 at 15:55 +0200, Stefan Kost wrote:
> Hi,
>
> also the GstBin implements it. Ask me if you need help and let me know
> when you have a patch (bst to put on bugzilla and post the ticket here.)
>
> Thanks for trying!
>
> Stefan
>
>
> Quoting Sameer Naik <sameer at damagehead.com>:
>
> > i see it done in the equalizer plugin factory.
> > i shall work on getting this functionality into the videomixer
> > thanks for the help stefan
> >
> > ~sameer
> >
> > On Wed, 2007-10-17 at 20:41 +0300, Stefan Kost wrote:
> >> hi,
> >>
> >> Sameer Naik schrieb:
> >> > hi,
> >> >
> >> > im writing a n-1 element, and am using the videomixer plugin (from
> >> > gst-plugins-good package) to get the plug-in architecture in place.
> >> >
> >> > in the videomixer plugin, i see that the gstpad object is overloaded and
> >> > a new videomixerpad object is created to store information information
> >> > about each input pad.
> >> > the videomixerpad class has the following properties installed on it:
> >> > alpha, xpos, ypos,...
> >> > but if i run the following pipeline:
> >> >
> >> > gst-launch videotestsrc ! video/x-raw-yuv, xpos=320, ypos=240,
> >> > alpha=0.1 ! ffmpegcolorspace ! xvimagesink
> >>
> >> #1 there is no videomix there.
> >> #2 you cannot specify pad-proerties on capsfilter - it simple does
> >> not make sense
> >>
> >> Videomixer should implement the childproxy iface. Then you can do:
> >> gst-launch videotestsrc ! videomixer src_00::xpos=320 src_00::ypos=240
> >> src_00::alpha=0.1 ! ffmpegcolorspace ! xvimagesink
> >>
> >> Its not difficult, do you wanna try?
> >>
> >> Stefan
> >>
> >>
> >> >
> >> > no change appears at the displayed output, or to the properties of the
> >> > pad.
> >> >
> >> > is it that the pad properties cannot be set in the above manner. if so,
> >> > is there a way to set the pad properties at the command line level.
> >> >
> >> > regards
> >> > ~sameer
> >> >
> >> >
> >> > -------------------------------------------------------------------------
> >> > This SF.net email is sponsored by: Splunk Inc.
> >> > Still grepping through log files to find problems? Stop.
> >> > Now Search log events and configuration files using AJAX and a browser.
> >> > Download your FREE copy of Splunk now >> http://get.splunk.com/
> >> > _______________________________________________
> >> > gstreamer-devel mailing list
> >> > gstreamer-devel at lists.sourceforge.net
> >> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >>
> >
> >
>
>
More information about the gstreamer-devel
mailing list