## GstConfig

GstConfig — Configuration options

## Synopsis

    #include <gst/gst.h>

    #define     GST_DISABLE_LOADSAVE_REGISTRY
    #define     GST_DISABLE_GST_DEBUG
    #define     GST_DISABLE_LOADSAVE
    #define     GST_DISABLE_PARSE
    #define     GST_DISABLE_TRACE
    #define     GST_DISABLE_ALLOC_TRACE
    #define     GST_DISABLE_REGISTRY
    #define     GST_DISABLE_ENUMTYPES
    #define     GST_DISABLE_INDEX
    #define     GST_DISABLE_PLUGIN
    #define     GST_DISABLE_URI
    #define     GST_PTR_FORMAT
    #define     GST_EXPORT
    #define     GST_PLUGIN_EXPORT

## Description

This describes the configuration options for GStreamer. When building GStreamer there are a lot of parts (known internally as "subsystems" ) that can be disabled for various reasons. The most common reasons are speed and size, which is important because GStreamer is designed to run on embedded systems.

If a subsystem is disabled, most of this changes are done in an API compatible way, so you don't need to adapt your code in most cases. It is never done in an ABI compatible way though. So if you want to disable a suybsystem, you have to rebuild all programs depending on GStreamer, too.

If a subsystem is disabled in GStreamer, a value is defined in <gst/gst.h>. You can check this if you do subsystem-specific stuff.

Example 4. Doing subsystem specific things

    #ifndef GST_DISABLE_GST_DEBUG
    /* do stuff specific to the debugging subsystem */
    #endif /* GST_DISABLE_GST_DEBUG */

## Details

### GST_DISABLE_LOADSAVE_REGISTRY

    #define     GST_DISABLE_LOADSAVE_REGISTRY

### GST_DISABLE_GST_DEBUG

    #define GST_DISABLE_GST_DEBUG 1

If this is defined, the debugging subsystem is disabled and debugging messages are not output.

### GST_DISABLE_LOADSAVE

    #define GST_DISABLE_LOADSAVE 1

### GST_DISABLE_PARSE

    #define GST_DISABLE_PARSE 1

### GST_DISABLE_TRACE

    #define GST_DISABLE_TRACE 1

### GST_DISABLE_ALLOC_TRACE

    #define GST_DISABLE_ALLOC_TRACE 1

### GST_DISABLE_REGISTRY

    #define GST_DISABLE_REGISTRY 1

### GST_DISABLE_ENUMTYPES

    #define GST_DISABLE_ENUMTYPES 1

### GST_DISABLE_INDEX

    #define GST_DISABLE_INDEX 1

### GST_DISABLE_PLUGIN

    #define GST_DISABLE_PLUGIN 1

### GST_DISABLE_URI

    #define GST_DISABLE_URI 1

### GST_PTR_FORMAT

    #define GST_PTR_FORMAT "P"

printf format type used to debug GStreamer types. This can only be used on types whose size is >= sizeof(gpointer).

### GST_EXPORT

    #define     GST_EXPORT

Export the given variable from the built shared object.

On Windows, this exports the variable from the DLL. On other platforms, this gets defined to "extern".

### GST_PLUGIN_EXPORT

    #define     GST_PLUGIN_EXPORT

Export the plugin's definition.

On Windows, this exports the plugin definition from the DLL. On other platforms, this gets defined as a no-op.