## gstpbutils gstpbutils — General Application and Plugin Utility Library |

## Synopsis

    #include <gst/pbutils/pbutils.h>

    void                gst_pb_utils_init                   (void);

    #define             GST_PLUGINS_BASE_VERSION_MAJOR
    #define             GST_PLUGINS_BASE_VERSION_MINOR
    #define             GST_PLUGINS_BASE_VERSION_MICRO
    #define             GST_PLUGINS_BASE_VERSION_NANO
    #define             GST_CHECK_PLUGINS_BASE_VERSION      (major,
                                                             minor,
                                                             micro)
    void                gst_plugins_base_version            (guint *major,
                                                             guint *minor,
                                                             guint *micro,
                                                             guint *nano);
    gchar *             gst_plugins_base_version_string     (void);

## Description

### Linking to this library

libgstpbutils is a general utility library for plugins and applications, available since gst-plugins-base 0.10.12. It currently provides the following:

- human-readable description strings of codecs, elements, sources, decoders, encoders, or sinks from decoder/encoder caps, element names, or protocol names.

- support for applications to initiate installation of missing plugins (if this is supported by the distribution or operating system used)

- API for GStreamer elements to create missing-plugin messages in order to communicate to the application that a certain type of plugin is missing (decoder, encoder, URI protocol source, URI protocol sink, named element)

- API for applications to recognise and handle missing-plugin messages

You should obtain the required CFLAGS and LIBS using pkg-config on the gstreamer-plugins-base-0.10 module. You will then also need to add '-lgstpbutils-0.10' manually to your LIBS line.

Before using any of its functions, applications and plugins must call `gst_pb_utils_init()` to initialise the library.

## Details

### gst_pb_utils_init ()

    void                gst_pb_utils_init                   (void);

Initialises the base utils support library. This function is not thread-safe. Applications should call it after calling `gst_init()`, plugins should call it from their plugin_init function.

This function may be called multiple times. It will do nothing if the library has already been initialised.

Since 0.10.12

### GST_PLUGINS_BASE_VERSION_MAJOR

    #define GST_PLUGINS_BASE_VERSION_MAJOR (0)

The major version of GStreamer's gst-plugins-base libraries at compile time.

Since 0.10.31

### GST_PLUGINS_BASE_VERSION_MINOR

    #define GST_PLUGINS_BASE_VERSION_MINOR (10)

The minor version of GStreamer's gst-plugins-base libraries at compile time.

Since 0.10.31

### GST_PLUGINS_BASE_VERSION_MICRO

    #define GST_PLUGINS_BASE_VERSION_MICRO (35)

The micro version of GStreamer's gst-plugins-base libraries at compile time.

Since 0.10.31

### GST_PLUGINS_BASE_VERSION_NANO

    #define GST_PLUGINS_BASE_VERSION_NANO (0)

The nano version of GStreamer's gst-plugins-base libraries at compile time. Actual releases have 0, GIT versions have 1, prerelease versions have 2-...

Since 0.10.31

### GST_CHECK_PLUGINS_BASE_VERSION()

    #define             GST_CHECK_PLUGINS_BASE_VERSION(major,minor,micro)

### gst_plugins_base_version ()

    void                gst_plugins_base_version            (guint *major,
                                                             guint *minor,
                                                             guint *micro,
                                                             guint *nano);

Gets the version number of the GStreamer Plugins Base libraries.

`major` : | pointer to a guint to store the major version number, or `NULL`. [out]
`minor` : | pointer to a guint to store the minor version number, or `NULL`. [out]
`micro` : | pointer to a guint to store the micro version number, or `NULL`. [out]
`nano` : | pointer to a guint to store the nano version number, or `NULL`. [out]

Since 0.10.31

### gst_plugins_base_version_string ()

    gchar *             gst_plugins_base_version_string     (void);

This function returns a string that is useful for describing this version of GStreamer's gst-plugins-base libraries to the outside world: user agent strings, logging, about dialogs ...

Returns : | a newly allocated string describing this version of gst-plugins-base

Since 0.10.31