<div dir="ltr">When I have the time I will try to take a look at the lv2/ladspa plugin source :D But as I have never done a Gstreamer or lv2/ladspa plugin before I am not sure I will succeed and be able to provide patches.<div><br></div><div>Best regards,</div><div><br></div><div> Wellington </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 21, 2018 at 6:23 PM, Thibault Saunier <span dir="ltr"><<a href="mailto:tsaunier@gnome.org" target="_blank">tsaunier@gnome.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">> Maybe there is a limitation in the LADSPA or LV2 support and there is no internal calling for the notify property when GStreamer updates the the readonly properties of these kind of plugins. Or maybe something is missing in the Python bindings.<br>
<br>
</span>From what you describe I would guess something is missing in the<br>
lv2/ladspa GStreamer plugin, patches welcome :-)<br>
<br>
Regards,<br>
<br>
Thibault Saunier<br>
<div class="HOEnZb"><div class="h5"><br>
On Wed, Mar 21, 2018 at 1:00 AM, wellington wallace<br>
<<a href="mailto:wellingtonwallace@gmail.com">wellingtonwallace@gmail.com</a>> wrote:<br>
> Hi Michael<br>
><br>
> I tried what you suggested and the callback is called only when I invoke<br>
> GObject notify method. Nothing happens when the plugin updates the property.<br>
> I will detail a little more my situation. I am the developer of this<br>
> application <a href="https://github.com/wwmm/pulseeffects" rel="noreferrer" target="_blank">https://github.com/wwmm/<wbr>pulseeffects</a>. In it I use a few LADSPA<br>
> and LV2 plugins that write on readonly parameters information like the<br>
> current audio delay, attenuation or latency. I would like to show this kind<br>
> of information without using a combination of GLib.timeout_add_seconds and<br>
> get_property like I am doing know. Things like the delay of the delay plugin<br>
> do not change all the time like the attenuation of a compressor. So it does<br>
> not make sense to get this value in a timer.<br>
><br>
> Maybe there is a limitation in the LADSPA or LV2 support and there is no<br>
> internal calling for the notify property when GStreamer updates the the<br>
> readonly properties of these kind of plugins. Or maybe something is missing<br>
> in the Python bindings.<br>
><br>
> Best regards,<br>
><br>
> Wellington<br>
><br>
><br>
> On Tue, Mar 20, 2018 at 1:05 PM, Michael Gruner<br>
> <<a href="mailto:michael.gruner@ridgerun.com">michael.gruner@ridgerun.com</a>> wrote:<br>
>><br>
>> Hi Wellington<br>
>><br>
>> Every GObject (GstElements included) may emit a signal every time one of<br>
>> its properties change. This signal is named “notify::<property name>”. So,<br>
>> for example, if you’d like to register a callback every time the “sync”<br>
>> property changes, you would do something like:<br>
>><br>
>> /* Activate property change notification */<br>
>> g_object_notify (G_OBJECT (sink), “sync”);<br>
>><br>
>> /* Register a callback */<br>
>> g_signal_connect (sink, "notify::sync",<br>
>> G_CALLBACK (sync_update_callback), NULL);<br>
>><br>
>> You may find more info in the notify signal documentation:<br>
>><br>
>> <a href="https://developer.gnome.org/gobject/stable/gobject-The-Base-Object-Type.html#GObject-notify" rel="noreferrer" target="_blank">https://developer.gnome.org/<wbr>gobject/stable/gobject-The-<wbr>Base-Object-Type.html#GObject-<wbr>notify</a><br>
>><br>
>><br>
>> —<br>
>> Michael Gruner <<a href="mailto:michael.gruner@ridgerun.com">michael.gruner@ridgerun.com</a>><br>
>> Embedded Linux and GStreamer solutions<br>
>> RidgeRun Engineering<br>
>> Contact Us - <a href="http://www.ridgerun.com/#!contact/c3vn" rel="noreferrer" target="_blank">http://www.ridgerun.com/#!<wbr>contact/c3vn</a><br>
>><br>
>> On Mar 20, 2018, at 09:18, wellington wallace<br>
>> <<a href="mailto:wellingtonwallace@gmail.com">wellingtonwallace@gmail.com</a>> wrote:<br>
>><br>
>> Hi!<br>
>><br>
>> I would like to be notified when an readonly parameter changes. Consider<br>
>> for example the current delay or latency of ladspa or lv2 delay plugin. I<br>
>> tried the following with no success:<br>
>><br>
>> self.delay.bind_property('<wbr>left-delay', self.ui_value, 'value',<br>
>> GObject.BindingFlags.DEFAULT)<br>
>><br>
>> When the property is writable I am notified about its changes but not when<br>
>> it is readonly. I know that the plugin code made changes to the parameter<br>
>> because I can see them doing print(self.delay.get_property(<wbr>'left-delay)).<br>
>><br>
>> Is there a way to be notified about these changes without having to<br>
>> periodically calling get_property?<br>
>><br>
>> Best regards,<br>
>><br>
>> Wellington<br>
>><br>
>> --<br>
>> Prof.° Wellington Wallace Miguel Melo<br>
>><br>
>> CEFET/RJ Uned Nova Iguaçu<br>
>><br>
>> ______________________________<wbr>_________________<br>
>> gstreamer-devel mailing list<br>
>> <a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.<wbr>freedesktop.org</a><br>
>> <a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/gstreamer-<wbr>devel</a><br>
>><br>
>><br>
><br>
><br>
><br>
> --<br>
> Prof.° Wellington Wallace Miguel Melo<br>
><br>
> CEFET/RJ Uned Nova Iguaçu<br>
><br>
><br>
> ______________________________<wbr>_________________<br>
> gstreamer-devel mailing list<br>
> <a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.<wbr>freedesktop.org</a><br>
> <a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/gstreamer-<wbr>devel</a><br>
><br>
______________________________<wbr>_________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.<wbr>freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/gstreamer-<wbr>devel</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Prof.° Wellington Wallace Miguel Melo<br><br><div>CEFET/RJ Uned Nova Iguaçu<br><br></div></div></div>
</div>