GStreamer 0.8 Core Reference Manual |
---|
GstFormat — Dynamically register new formats
#include <gst/gst.h> enum GstFormat; #define GST_FORMAT_PERCENT_MAX #define GST_FORMAT_PERCENT_SCALE struct GstFormatDefinition; #define GST_FORMATS_FUNCTION (type, functionname, ...) GstFormat gst_format_register (const gchar *nick, const gchar *description); GstFormat gst_format_get_by_nick (const gchar *nick); gboolean gst_formats_contains (const GstFormat *formats, GstFormat format); G_CONST_RETURN GstFormatDefinition* gst_format_get_details (GstFormat format); G_CONST_RETURN GList* gst_format_get_definitions (void);
GstFormats functions are used to register a new format to the gstreamer core. formats can be used to perform seeking or conversions/query operations.
typedef enum { GST_FORMAT_UNDEFINED = 0, /* must be first in list */ GST_FORMAT_DEFAULT = 1, /* samples for audio, frames/fields for video */ GST_FORMAT_BYTES = 2, GST_FORMAT_TIME = 3, GST_FORMAT_BUFFERS = 4, GST_FORMAT_PERCENT = 5 } GstFormat;
Standard predefined formats
GST_FORMAT_UNDEFINED | undefined format |
GST_FORMAT_DEFAULT | the default format of the pad/element |
GST_FORMAT_BYTES | bytes |
GST_FORMAT_TIME | time in nanoseconds |
GST_FORMAT_BUFFERS | buffers |
GST_FORMAT_PERCENT | percentage of stream |
#define GST_FORMAT_PERCENT_MAX G_GINT64_CONSTANT (1000000)
The PERCENT format is between 0 and this value
#define GST_FORMAT_PERCENT_SCALE G_GINT64_CONSTANT (10000)
The value used to scale down the reported PERCENT format value to its real value.
struct GstFormatDefinition { GstFormat value; gchar *nick; gchar *description; };
A format definition
GstFormat value | The unique id of this format |
gchar *nick | A short nick of the format |
gchar *description | A longer description of the format |
#define GST_FORMATS_FUNCTION(type, functionname, ...)
A convenience function to define a function that returns an array of formats.
type : | The type of the first argument of the function |
functionname : | The name of the function |
... : | comma separated list of functions closed with 0 |
GstFormat gst_format_register (const gchar *nick, const gchar *description);
Create a new GstFormat based on the nick or return an allrady registered format with that nick
nick : | The nick of the new format |
description : | The description of the new format |
Returns : | A new GstFormat or an already registered format with the same nick. |
GstFormat gst_format_get_by_nick (const gchar *nick);
Return the format registered with the given nick.
nick : | The nick of the format |
Returns : | The format with nick or GST_FORMAT_UNDEFINED if the format was not registered. |
gboolean gst_formats_contains (const GstFormat *formats, GstFormat format);
See if the given format is inside the format array.
formats : | The format array to search |
format : | the format to find |
Returns : | TRUE if the format is found inside the array |
G_CONST_RETURN GstFormatDefinition* gst_format_get_details (GstFormat format);
Get details about the given format.
format : | The format to get details of |
Returns : | The GstFormatDefinition for format or NULL on failure. |
G_CONST_RETURN GList* gst_format_get_definitions (void);
Get a list of all the registered formats.
Returns : | A GList of GstFormatDefinition. |
<< GstFilter | GstGhostPad >> |