Fabian Deutsch <fabian.deutsch@...> writes:

> 
> Hi,
> 
> Am Montag, den 05.03.2012, 20:12 +0000 schrieb Thomas:
> > I am new to Vala. I am trying to develop a simple application using
> > Gstreamer and Vala, but I fail with the connection of signlas defined
> > within the Gstreamer Element cairoooverlay
> >
(http://developer.gnome.org/gst-plugins-libs/unstable/gst-plugins-good-plugins-cairooverlay.html).
> > What i am Trying to do ist the following:
> > 
> > this.pipeline =  (Pipeline)Gst.parse_launch("... cairooverlay
> > name=overlay ...");
> > ...
> > Element ov = this.pipeline.get_by_name("overlay");
> > ov.connect("caps_changed", this.caps_changed_cb);
> 
> Just one hint about Gstreamer Elements: Use Vala's dynamic keyword.
> Using this keyword you can access properties and signals of the lements
> without using the getters or connect methods.
> 
> dynamic Element ov = ...
> ov.name = "overlay";
> ov.caps_changed.connect (this.caps_changed_cb);
> 
> Sorry that I can't tell you the right sinal, but the docs might help you
> here (or gst-inspect cairooverlay)
> 
> Greetings
> fabian
> 
> > The code compiles fine, but I get the runtime warning and the signal
> > is not connected.
> > 
> > GLib-GObject-WARNING **: g_object_connect: invalid signal spec 
> > "caps_changed"
> > 
> > What is standard way to connect to this signal with a proper callback
> > in Vala? The function to connect the signal from C is
> > g_signal_connect.
> > 
> > Cheers
> > Thomas
> > 
> > _______________________________________________
> > vala-list mailing list
> > vala-list@...
> > http://mail.gnome.org/mailman/listinfo/vala-list
> 

Hi,

this solved the problem. I was looking everywhere to find a solution. Thanks a
lot. The correct way to achive what i wanted was:

this.pipeline =  (Pipeline)Gst.parse_launch("... cairooverlay
name=overlay ...");
...
dynamic Element ov = this.pipeline.get_by_name("overlay");
ov.caps_changed.connect(this.caps_changed_cb);
...
private void caps_changed_cb(Element element, Caps caps){
..
}

Greetings
Thomas



_______________________________________________
vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to