[gst-devel] State of DParams

Stefan Kost kost at imn.htwk-leipzig.de
Fri Jan 21 03:10:22 CET 2005


Hi Steve,

an gst-element has two kinds of properties
* those which are kind of setup properties
* those witch change at realtime (dparams)

in buzztard I create GUIS for both of them - preferences and realtime
properties. problems:

#1 one should not change gobject-properties that are also changed by dparams
WARNING **: Bypassing attached dparam 'freq', It will be detached.

So I need to find out which gobject properties I should not show in the settings
interface, as they are better to be controlled via dparams.
Usually both the dparam and the object property are named equal, but this is not
enforced. The dparam gets a function that performs the change and this function
will usually change the same target (in sinesrc) as the gobject property does.
But if needed it could do different things.

#2 when e.g. the sequencer changes dparams, one cant update the GUI as the
notifications are not sent

What I am trying to do is:
g_signal_connect(G_OBJECT(dparam),"notify::value_double",on_dparam_notify,widget);

static void on_range_property_notify(const GstElement *machine,GParamSpec
*property,gpointer user_data) {
 GtkWidget *widget=GTK_WIDGET(user_data);
 gdouble value;
	
  g_assert(user_data);

  GST_INFO("property value notify received");
	
  g_object_get(G_OBJECT(machine),property->name,&value,NULL);
  gtk_range_set_value(GTK_RANGE(widget),value);
}

I don't see right now how you avoid the notifies beeing sent, as that is a
default gobject behaviour.

The "value-changed" signal is sent, but theoretically obsolete. I'll look closer
into this ...

Stefan

Steve Baker wrote:
>>hi steve,
>>
>>therefore I would have to filter the properties from the gobject instance
>>that
>>are handled by dparams.
>>For e.g. sincesrc the dparams (incidentially) have the same name as the
>>gobject
>>properties. I've looked at the code and it seems that this is not part of
>>the
>>current dparam api :(
> 
> 
> What exactly do you want to do and why?
> 
> 
> 
> 

-- 
http://www.buzztard.org




More information about the gstreamer-devel mailing list