gstpropertyprobe

gstpropertyprobe — Interface for probing possible property values

Synopsis


#include <gst/interfaces/propertyprobe.h>

                    GstPropertyProbe;
                    GstPropertyProbeInterface;
const GList*        gst_property_probe_get_properties   (GstPropertyProbe *probe);
const GParamSpec*   gst_property_probe_get_property     (GstPropertyProbe *probe,
                                                         const gchar *name);
GValueArray*        gst_property_probe_get_values       (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);
GValueArray*        gst_property_probe_get_values_name  (GstPropertyProbe *probe,
                                                         const gchar *name);
gboolean            gst_property_probe_needs_probe      (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);
gboolean            gst_property_probe_needs_probe_name (GstPropertyProbe *probe,
                                                         const gchar *name);
GValueArray*        gst_property_probe_probe_and_get_values
                                                        (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);
GValueArray*        gst_property_probe_probe_and_get_values_name
                                                        (GstPropertyProbe *probe,
                                                         const gchar *name);
void                gst_property_probe_probe_property   (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);
void                gst_property_probe_probe_property_name
                                                        (GstPropertyProbe *probe,
                                                         const gchar *name);

Object Hierarchy

  GInterface
   +----GstPropertyProbe

Signals

  "probe-needed"                                   : Run Last

Description

The property probe is a way to autodetect allowed values for a GObject property. It's primary use is to autodetect device-names in several elements.

The interface is implemented by many hardware sources and sinks.

Details

GstPropertyProbe

typedef struct _GstPropertyProbe GstPropertyProbe;

Opaque GstPropertyProbe data structure.


GstPropertyProbeInterface

typedef struct {
  GTypeInterface klass;

  /* signals */
  void          (*probe_needed)   (GstPropertyProbe *probe,
                                   const GParamSpec *pspec);

  /* virtual functions */
  const GList * (*get_properties) (GstPropertyProbe *probe);
  gboolean      (*needs_probe)    (GstPropertyProbe *probe,
                                   guint             prop_id,
                                   const GParamSpec *pspec);
  void          (*probe_property) (GstPropertyProbe *probe,
                                   guint             prop_id,
                                   const GParamSpec *pspec);
  GValueArray * (*get_values)     (GstPropertyProbe *probe,
                                   guint             prop_id,
                                   const GParamSpec *pspec);
} GstPropertyProbeInterface;

GstPropertyProbe interface.

GTypeInterface klass; parent interface type.
probe_needed () default signal handler
get_properties () virtual method to get list of probable properties
needs_probe () virtual method to tell if probe need update
probe_property () virtual method to probe a property
get_values () virtual method to get probe results for a property

gst_property_probe_get_properties ()

const GList*        gst_property_probe_get_properties   (GstPropertyProbe *probe);

Get a list of properties for which probing is supported.

probe : the GstPropertyProbe to get the properties for.
Returns : the list of properties for which probing is supported by this element.

gst_property_probe_get_property ()

const GParamSpec*   gst_property_probe_get_property     (GstPropertyProbe *probe,
                                                         const gchar *name);

Get GParamSpec for a property for which probing is supported.

probe : the GstPropertyProbe to get the properties for.
name : name of the property.
Returns : the GParamSpec of NULL.

gst_property_probe_get_values ()

GValueArray*        gst_property_probe_get_values       (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);

Gets the possible (probed) values for the given property, requires the property to have been probed before.

probe : the GstPropertyProbe object.
pspec : the GParamSpec property identifier.
Returns : A list of valid values for the given property.

gst_property_probe_get_values_name ()

GValueArray*        gst_property_probe_get_values_name  (GstPropertyProbe *probe,
                                                         const gchar *name);

Same as gst_property_probe_get_values().

probe : the GstPropertyProbe object.
name : the name of the property to get values for.
Returns : A list of valid values for the given property.

gst_property_probe_needs_probe ()

gboolean            gst_property_probe_needs_probe      (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);

Checks whether a property needs a probe. This might be because the property wasn't initialized before, or because host setup changed. This might be, for example, because a new device was added, and thus device probing needs to be refreshed to display the new device.

probe : the GstPropertyProbe object to which the given property belongs.
pspec : a GParamSpec that identifies the property to check.
Returns : TRUE if the property needs a new probe, FALSE if not.

gst_property_probe_needs_probe_name ()

gboolean            gst_property_probe_needs_probe_name (GstPropertyProbe *probe,
                                                         const gchar *name);

Same as gst_property_probe_needs_probe().

probe : the GstPropertyProbe object to which the given property belongs.
name : the name of the property to check.
Returns : TRUE if the property needs a new probe, FALSE if not.

gst_property_probe_probe_and_get_values ()

GValueArray*        gst_property_probe_probe_and_get_values
                                                        (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);

Check whether the given property requires a new probe. If so, fo the probe. After that, retrieve a value list. Meant as a utility function that wraps the above functions.

probe : the GstPropertyProbe object.
pspec : The GParamSpec property identifier.
Returns : the list of valid values for this property.

gst_property_probe_probe_and_get_values_name ()

GValueArray*        gst_property_probe_probe_and_get_values_name
                                                        (GstPropertyProbe *probe,
                                                         const gchar *name);

Same as gst_property_probe_probe_and_get_values().

probe : the GstPropertyProbe object.
name : the name of the property to get values for.
Returns : the list of valid values for this property.

gst_property_probe_probe_property ()

void                gst_property_probe_probe_property   (GstPropertyProbe *probe,
                                                         const GParamSpec *pspec);

Runs a probe on the property specified by pspec

probe : the GstPropertyProbe to check.
pspec : GParamSpec of the property.

gst_property_probe_probe_property_name ()

void                gst_property_probe_probe_property_name
                                                        (GstPropertyProbe *probe,
                                                         const gchar *name);

Runs a probe on the property specified by name.

probe : the GstPropertyProbe to check.
name : name of the property.

Signal Details

The "probe-needed" signal

void                user_function                      (GstPropertyProbe *pspec,
                                                        gpointer          arg1,
                                                        gpointer          user_data)      : Run Last

pspec : GParamSpec that needs a probe
user_data : user data set when the signal handler was connected.