mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-08 18:39:54 +00:00
.h: fix header files
Ensure correct indentation and :retab. Make sure all structures have padding Fix up some old ABI additions.
This commit is contained in:
parent
870a5b0e12
commit
4a7c3b929a
35 changed files with 768 additions and 734 deletions
|
@ -107,7 +107,7 @@ void gst_segtrap_set_enabled (gboolean enabled);
|
|||
gboolean gst_registry_fork_is_enabled (void);
|
||||
void gst_registry_fork_set_enabled (gboolean enabled);
|
||||
|
||||
gboolean gst_update_registry (void);
|
||||
gboolean gst_update_registry (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -89,6 +89,8 @@ typedef struct _GstBufferPoolParams {
|
|||
gint64 start;
|
||||
gint64 stop;
|
||||
GstBufferPoolFlags flags;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
} GstBufferPoolParams;
|
||||
|
||||
/**
|
||||
|
|
|
@ -127,7 +127,8 @@ struct _GstBus
|
|||
|
||||
/*< private >*/
|
||||
GstBusPrivate *priv;
|
||||
gpointer _gst_reserved[GST_PADDING - 1];
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
struct _GstBusClass
|
||||
|
|
|
@ -28,10 +28,10 @@
|
|||
G_BEGIN_DECLS
|
||||
|
||||
|
||||
#define GST_TYPE_CHILD_PROXY (gst_child_proxy_get_type ())
|
||||
#define GST_CHILD_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_CHILD_PROXY, GstChildProxy))
|
||||
#define GST_IS_CHILD_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_CHILD_PROXY))
|
||||
#define GST_CHILD_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_CHILD_PROXY, GstChildProxyInterface))
|
||||
#define GST_TYPE_CHILD_PROXY (gst_child_proxy_get_type ())
|
||||
#define GST_CHILD_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_CHILD_PROXY, GstChildProxy))
|
||||
#define GST_IS_CHILD_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_CHILD_PROXY))
|
||||
#define GST_CHILD_PROXY_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_CHILD_PROXY, GstChildProxyInterface))
|
||||
|
||||
/**
|
||||
* GstChildProxy:
|
||||
|
@ -54,12 +54,12 @@ struct _GstChildProxyInterface
|
|||
GTypeInterface parent;
|
||||
|
||||
/* methods */
|
||||
GstObject *(*get_child_by_index) (GstChildProxy * parent, guint index);
|
||||
guint (*get_children_count) (GstChildProxy * parent);
|
||||
GstObject * (*get_child_by_index) (GstChildProxy * parent, guint index);
|
||||
guint (*get_children_count) (GstChildProxy * parent);
|
||||
/*< private >*/
|
||||
/* signals */
|
||||
void (*child_added) (GstChildProxy * parent, GstObject * child);
|
||||
void (*child_removed) (GstChildProxy * parent, GstObject * child);
|
||||
void (*child_added) (GstChildProxy * parent, GstObject * child);
|
||||
void (*child_removed) (GstChildProxy * parent, GstObject * child);
|
||||
|
||||
/*< private >*/
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
|
@ -67,24 +67,34 @@ struct _GstChildProxyInterface
|
|||
|
||||
GType gst_child_proxy_get_type (void);
|
||||
|
||||
GstObject *gst_child_proxy_get_child_by_name (GstChildProxy * parent, const gchar * name);
|
||||
GstObject *gst_child_proxy_get_child_by_index (GstChildProxy * parent, guint index);
|
||||
guint gst_child_proxy_get_children_count (GstChildProxy * parent);
|
||||
GstObject * gst_child_proxy_get_child_by_name (GstChildProxy * parent, const gchar * name);
|
||||
|
||||
gboolean gst_child_proxy_lookup (GstObject *object, const gchar *name,
|
||||
GstObject **target, GParamSpec **pspec);
|
||||
void gst_child_proxy_get_property (GstObject * object, const gchar *name, GValue *value);
|
||||
void gst_child_proxy_get_valist (GstObject * object,
|
||||
const gchar * first_property_name, va_list var_args);
|
||||
void gst_child_proxy_get (GstObject * object, const gchar * first_property_name,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
void gst_child_proxy_set_property (GstObject * object, const gchar *name, const GValue *value);
|
||||
void gst_child_proxy_set_valist (GstObject* object,
|
||||
const gchar * first_property_name, va_list var_args);
|
||||
void gst_child_proxy_set (GstObject * object, const gchar * first_property_name,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
void gst_child_proxy_child_added (GstObject * object, GstObject * child);
|
||||
void gst_child_proxy_child_removed (GstObject * object, GstObject * child);
|
||||
guint gst_child_proxy_get_children_count (GstChildProxy * parent);
|
||||
GstObject * gst_child_proxy_get_child_by_index (GstChildProxy * parent, guint index);
|
||||
|
||||
gboolean gst_child_proxy_lookup (GstObject *object, const gchar *name,
|
||||
GstObject **target, GParamSpec **pspec);
|
||||
|
||||
void gst_child_proxy_get_property (GstObject * object, const gchar *name,
|
||||
GValue *value);
|
||||
void gst_child_proxy_get_valist (GstObject * object,
|
||||
const gchar * first_property_name,
|
||||
va_list var_args);
|
||||
void gst_child_proxy_get (GstObject * object,
|
||||
const gchar * first_property_name,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
void gst_child_proxy_set_property (GstObject * object, const gchar *name,
|
||||
const GValue *value);
|
||||
void gst_child_proxy_set_valist (GstObject* object,
|
||||
const gchar * first_property_name,
|
||||
va_list var_args);
|
||||
void gst_child_proxy_set (GstObject * object,
|
||||
const gchar * first_property_name,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
void gst_child_proxy_child_added (GstObject * object, GstObject * child);
|
||||
void gst_child_proxy_child_removed (GstObject * object, GstObject * child);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -140,13 +140,13 @@ struct _GstClockPrivate
|
|||
|
||||
/* seqlocks */
|
||||
#define read_seqbegin(clock) \
|
||||
g_atomic_int_get (&clock->ABI.priv->post_count);
|
||||
g_atomic_int_get (&clock->priv->post_count);
|
||||
|
||||
static inline gboolean
|
||||
read_seqretry (GstClock * clock, gint seq)
|
||||
{
|
||||
/* no retry if the seqnum did not change */
|
||||
if (G_LIKELY (seq == g_atomic_int_get (&clock->ABI.priv->pre_count)))
|
||||
if (G_LIKELY (seq == g_atomic_int_get (&clock->priv->pre_count)))
|
||||
return FALSE;
|
||||
|
||||
/* wait for the writer to finish and retry */
|
||||
|
@ -158,12 +158,12 @@ read_seqretry (GstClock * clock, gint seq)
|
|||
#define write_seqlock(clock) \
|
||||
G_STMT_START { \
|
||||
GST_OBJECT_LOCK (clock); \
|
||||
g_atomic_int_inc (&clock->ABI.priv->pre_count); \
|
||||
g_atomic_int_inc (&clock->priv->pre_count); \
|
||||
} G_STMT_END;
|
||||
|
||||
#define write_sequnlock(clock) \
|
||||
G_STMT_START { \
|
||||
g_atomic_int_inc (&clock->ABI.priv->post_count); \
|
||||
g_atomic_int_inc (&clock->priv->post_count); \
|
||||
GST_OBJECT_UNLOCK (clock); \
|
||||
} G_STMT_END;
|
||||
|
||||
|
@ -695,7 +695,7 @@ gst_clock_init (GstClock * clock)
|
|||
clock->entries_changed = g_cond_new ();
|
||||
clock->stats = FALSE;
|
||||
|
||||
clock->ABI.priv =
|
||||
clock->priv =
|
||||
G_TYPE_INSTANCE_GET_PRIVATE (clock, GST_TYPE_CLOCK, GstClockPrivate);
|
||||
|
||||
clock->internal_calibration = 0;
|
||||
|
|
231
gst/gstclock.h
231
gst/gstclock.h
|
@ -27,23 +27,23 @@
|
|||
G_BEGIN_DECLS
|
||||
|
||||
/* --- standard type macros --- */
|
||||
#define GST_TYPE_CLOCK (gst_clock_get_type ())
|
||||
#define GST_CLOCK(clock) (G_TYPE_CHECK_INSTANCE_CAST ((clock), GST_TYPE_CLOCK, GstClock))
|
||||
#define GST_IS_CLOCK(clock) (G_TYPE_CHECK_INSTANCE_TYPE ((clock), GST_TYPE_CLOCK))
|
||||
#define GST_CLOCK_CLASS(cclass) (G_TYPE_CHECK_CLASS_CAST ((cclass), GST_TYPE_CLOCK, GstClockClass))
|
||||
#define GST_IS_CLOCK_CLASS(cclass) (G_TYPE_CHECK_CLASS_TYPE ((cclass), GST_TYPE_CLOCK))
|
||||
#define GST_CLOCK_GET_CLASS(clock) (G_TYPE_INSTANCE_GET_CLASS ((clock), GST_TYPE_CLOCK, GstClockClass))
|
||||
#define GST_CLOCK_CAST(clock) ((GstClock*)(clock))
|
||||
#define GST_TYPE_CLOCK (gst_clock_get_type ())
|
||||
#define GST_CLOCK(clock) (G_TYPE_CHECK_INSTANCE_CAST ((clock), GST_TYPE_CLOCK, GstClock))
|
||||
#define GST_IS_CLOCK(clock) (G_TYPE_CHECK_INSTANCE_TYPE ((clock), GST_TYPE_CLOCK))
|
||||
#define GST_CLOCK_CLASS(cclass) (G_TYPE_CHECK_CLASS_CAST ((cclass), GST_TYPE_CLOCK, GstClockClass))
|
||||
#define GST_IS_CLOCK_CLASS(cclass) (G_TYPE_CHECK_CLASS_TYPE ((cclass), GST_TYPE_CLOCK))
|
||||
#define GST_CLOCK_GET_CLASS(clock) (G_TYPE_INSTANCE_GET_CLASS ((clock), GST_TYPE_CLOCK, GstClockClass))
|
||||
#define GST_CLOCK_CAST(clock) ((GstClock*)(clock))
|
||||
|
||||
#define GST_CLOCK_SLAVE_LOCK(clock) g_mutex_lock (GST_CLOCK_CAST (clock)->slave_lock)
|
||||
#define GST_CLOCK_SLAVE_UNLOCK(clock) g_mutex_unlock (GST_CLOCK_CAST (clock)->slave_lock)
|
||||
#define GST_CLOCK_SLAVE_LOCK(clock) g_mutex_lock (GST_CLOCK_CAST (clock)->slave_lock)
|
||||
#define GST_CLOCK_SLAVE_UNLOCK(clock) g_mutex_unlock (GST_CLOCK_CAST (clock)->slave_lock)
|
||||
|
||||
/**
|
||||
* GstClockTime:
|
||||
*
|
||||
* A datatype to hold a time, measured in nanoseconds.
|
||||
*/
|
||||
typedef guint64 GstClockTime;
|
||||
typedef guint64 GstClockTime;
|
||||
|
||||
/**
|
||||
* GST_TYPE_CLOCK_TIME:
|
||||
|
@ -70,21 +70,21 @@ typedef gpointer GstClockID;
|
|||
*
|
||||
* Constant to define an undefined clock time.
|
||||
*/
|
||||
#define GST_CLOCK_TIME_NONE ((GstClockTime) -1)
|
||||
#define GST_CLOCK_TIME_NONE ((GstClockTime) -1)
|
||||
/**
|
||||
* GST_CLOCK_TIME_IS_VALID:
|
||||
* @time: clock time to validate
|
||||
*
|
||||
* Tests if a given #GstClockTime represents a valid defined time.
|
||||
*/
|
||||
#define GST_CLOCK_TIME_IS_VALID(time) (((GstClockTime)(time)) != GST_CLOCK_TIME_NONE)
|
||||
#define GST_CLOCK_TIME_IS_VALID(time) (((GstClockTime)(time)) != GST_CLOCK_TIME_NONE)
|
||||
|
||||
/* FIXME: still need to explicitly force types on the defines below */
|
||||
/**
|
||||
* GST_SECOND:
|
||||
*
|
||||
* Constant that defines one GStreamer second.
|
||||
*
|
||||
*
|
||||
* Value: 1000000000
|
||||
*
|
||||
*/
|
||||
|
@ -93,27 +93,27 @@ typedef gpointer GstClockID;
|
|||
* GST_MSECOND:
|
||||
*
|
||||
* Constant that defines one GStreamer millisecond.
|
||||
*
|
||||
*
|
||||
* Value: 1000000
|
||||
*
|
||||
*
|
||||
*/
|
||||
#define GST_MSECOND (GST_SECOND / G_GINT64_CONSTANT (1000))
|
||||
/**
|
||||
* GST_USECOND:
|
||||
*
|
||||
* Constant that defines one GStreamer microsecond.
|
||||
*
|
||||
*
|
||||
* Value: 1000
|
||||
*
|
||||
*
|
||||
*/
|
||||
#define GST_USECOND (GST_SECOND / G_GINT64_CONSTANT (1000000))
|
||||
/**
|
||||
* GST_NSECOND:
|
||||
*
|
||||
* Constant that defines one GStreamer nanosecond
|
||||
*
|
||||
*
|
||||
* Value: 1
|
||||
*
|
||||
*
|
||||
*/
|
||||
#define GST_NSECOND (GST_SECOND / G_GINT64_CONSTANT (1000000000))
|
||||
|
||||
|
@ -163,7 +163,7 @@ typedef gpointer GstClockID;
|
|||
* Calculate a difference between two clock times as a #GstClockTimeDiff.
|
||||
* The difference is calculated as @e - @s.
|
||||
*/
|
||||
#define GST_CLOCK_DIFF(s, e) (GstClockTimeDiff)((e) - (s))
|
||||
#define GST_CLOCK_DIFF(s, e) (GstClockTimeDiff)((e) - (s))
|
||||
|
||||
/**
|
||||
* GST_TIMEVAL_TO_TIME:
|
||||
|
@ -171,7 +171,7 @@ typedef gpointer GstClockID;
|
|||
*
|
||||
* Convert a #GTimeVal to a #GstClockTime.
|
||||
*/
|
||||
#define GST_TIMEVAL_TO_TIME(tv) (GstClockTime)((tv).tv_sec * GST_SECOND + (tv).tv_usec * GST_USECOND)
|
||||
#define GST_TIMEVAL_TO_TIME(tv) (GstClockTime)((tv).tv_sec * GST_SECOND + (tv).tv_usec * GST_USECOND)
|
||||
|
||||
/**
|
||||
* GST_TIME_TO_TIMEVAL:
|
||||
|
@ -184,12 +184,12 @@ typedef gpointer GstClockID;
|
|||
* which is about 68 years. Expect trouble if you want to schedule stuff
|
||||
* in your pipeline for 2038.</note>
|
||||
*/
|
||||
#define GST_TIME_TO_TIMEVAL(t,tv) \
|
||||
G_STMT_START { \
|
||||
(tv).tv_sec = ((GstClockTime) (t)) / GST_SECOND; \
|
||||
(tv).tv_usec = (((GstClockTime) (t)) - \
|
||||
((GstClockTime) (tv).tv_sec) * GST_SECOND) \
|
||||
/ GST_USECOND; \
|
||||
#define GST_TIME_TO_TIMEVAL(t,tv) \
|
||||
G_STMT_START { \
|
||||
(tv).tv_sec = ((GstClockTime) (t)) / GST_SECOND; \
|
||||
(tv).tv_usec = (((GstClockTime) (t)) - \
|
||||
((GstClockTime) (tv).tv_sec) * GST_SECOND) \
|
||||
/ GST_USECOND; \
|
||||
} G_STMT_END
|
||||
|
||||
/**
|
||||
|
@ -198,7 +198,7 @@ G_STMT_START { \
|
|||
*
|
||||
* Convert a struct timespec (see man pselect) to a #GstClockTime.
|
||||
*/
|
||||
#define GST_TIMESPEC_TO_TIME(ts) (GstClockTime)((ts).tv_sec * GST_SECOND + (ts).tv_nsec * GST_NSECOND)
|
||||
#define GST_TIMESPEC_TO_TIME(ts) (GstClockTime)((ts).tv_sec * GST_SECOND + (ts).tv_nsec * GST_NSECOND)
|
||||
/**
|
||||
* GST_TIME_TO_TIMESPEC:
|
||||
* @t: The #GstClockTime to convert
|
||||
|
@ -206,10 +206,10 @@ G_STMT_START { \
|
|||
*
|
||||
* Convert a #GstClockTime to a struct timespec (see man pselect)
|
||||
*/
|
||||
#define GST_TIME_TO_TIMESPEC(t,ts) \
|
||||
G_STMT_START { \
|
||||
(ts).tv_sec = (t) / GST_SECOND; \
|
||||
(ts).tv_nsec = ((t) - (ts).tv_sec * GST_SECOND) / GST_NSECOND; \
|
||||
#define GST_TIME_TO_TIMESPEC(t,ts) \
|
||||
G_STMT_START { \
|
||||
(ts).tv_sec = (t) / GST_SECOND; \
|
||||
(ts).tv_nsec = ((t) - (ts).tv_sec * GST_SECOND) / GST_NSECOND; \
|
||||
} G_STMT_END
|
||||
|
||||
/* timestamp debugging macros */
|
||||
|
@ -250,10 +250,10 @@ G_STMT_START { \
|
|||
*/
|
||||
#define GST_CLOCK_ENTRY_TRACE_NAME "GstClockEntry"
|
||||
|
||||
typedef struct _GstClockEntry GstClockEntry;
|
||||
typedef struct _GstClock GstClock;
|
||||
typedef struct _GstClockClass GstClockClass;
|
||||
typedef struct _GstClockPrivate GstClockPrivate;
|
||||
typedef struct _GstClockEntry GstClockEntry;
|
||||
typedef struct _GstClock GstClock;
|
||||
typedef struct _GstClockClass GstClockClass;
|
||||
typedef struct _GstClockPrivate GstClockPrivate;
|
||||
|
||||
/* --- prototype for async callbacks --- */
|
||||
/**
|
||||
|
@ -267,8 +267,8 @@ typedef struct _GstClockPrivate GstClockPrivate;
|
|||
*
|
||||
* Returns: %TRUE or %FALSE (currently unused)
|
||||
*/
|
||||
typedef gboolean (*GstClockCallback) (GstClock *clock, GstClockTime time,
|
||||
GstClockID id, gpointer user_data);
|
||||
typedef gboolean (*GstClockCallback) (GstClock *clock, GstClockTime time,
|
||||
GstClockID id, gpointer user_data);
|
||||
/**
|
||||
* GstClockReturn:
|
||||
* @GST_CLOCK_OK: The operation succeeded.
|
||||
|
@ -284,14 +284,14 @@ typedef gboolean (*GstClockCallback) (GstClock *clock, GstClockTime time,
|
|||
*/
|
||||
typedef enum
|
||||
{
|
||||
GST_CLOCK_OK = 0,
|
||||
GST_CLOCK_EARLY = 1,
|
||||
GST_CLOCK_UNSCHEDULED = 2,
|
||||
GST_CLOCK_BUSY = 3,
|
||||
GST_CLOCK_BADTIME = 4,
|
||||
GST_CLOCK_ERROR = 5,
|
||||
GST_CLOCK_UNSUPPORTED = 6,
|
||||
GST_CLOCK_DONE = 7
|
||||
GST_CLOCK_OK = 0,
|
||||
GST_CLOCK_EARLY = 1,
|
||||
GST_CLOCK_UNSCHEDULED = 2,
|
||||
GST_CLOCK_BUSY = 3,
|
||||
GST_CLOCK_BADTIME = 4,
|
||||
GST_CLOCK_ERROR = 5,
|
||||
GST_CLOCK_UNSUPPORTED = 6,
|
||||
GST_CLOCK_DONE = 7
|
||||
} GstClockReturn;
|
||||
|
||||
/**
|
||||
|
@ -312,42 +312,42 @@ typedef enum {
|
|||
*
|
||||
* Cast to a clock entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY(entry) ((GstClockEntry *)(entry))
|
||||
#define GST_CLOCK_ENTRY(entry) ((GstClockEntry *)(entry))
|
||||
/**
|
||||
* GST_CLOCK_ENTRY_CLOCK:
|
||||
* @entry: the entry to query
|
||||
*
|
||||
* Get the owner clock of the entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY_CLOCK(entry) ((entry)->clock)
|
||||
#define GST_CLOCK_ENTRY_CLOCK(entry) ((entry)->clock)
|
||||
/**
|
||||
* GST_CLOCK_ENTRY_TYPE:
|
||||
* @entry: the entry to query
|
||||
*
|
||||
* Get the type of the clock entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY_TYPE(entry) ((entry)->type)
|
||||
#define GST_CLOCK_ENTRY_TYPE(entry) ((entry)->type)
|
||||
/**
|
||||
* GST_CLOCK_ENTRY_TIME:
|
||||
* @entry: the entry to query
|
||||
*
|
||||
* Get the requested time of this entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY_TIME(entry) ((entry)->time)
|
||||
#define GST_CLOCK_ENTRY_TIME(entry) ((entry)->time)
|
||||
/**
|
||||
* GST_CLOCK_ENTRY_INTERVAL:
|
||||
* @entry: the entry to query
|
||||
*
|
||||
* Get the interval of this periodic entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY_INTERVAL(entry) ((entry)->interval)
|
||||
#define GST_CLOCK_ENTRY_INTERVAL(entry) ((entry)->interval)
|
||||
/**
|
||||
* GST_CLOCK_ENTRY_STATUS:
|
||||
* @entry: the entry to query
|
||||
*
|
||||
* The status of the entry
|
||||
*/
|
||||
#define GST_CLOCK_ENTRY_STATUS(entry) ((entry)->status)
|
||||
#define GST_CLOCK_ENTRY_STATUS(entry) ((entry)->status)
|
||||
|
||||
/**
|
||||
* GstClockEntry:
|
||||
|
@ -359,18 +359,20 @@ typedef enum {
|
|||
* not be extended or allocated using a custom allocator.
|
||||
*/
|
||||
struct _GstClockEntry {
|
||||
gint refcount;
|
||||
gint refcount;
|
||||
/*< protected >*/
|
||||
GstClock *clock;
|
||||
GstClockEntryType type;
|
||||
GstClockTime time;
|
||||
GstClockTime interval;
|
||||
GstClockReturn status;
|
||||
GstClockCallback func;
|
||||
gpointer user_data;
|
||||
GDestroyNotify destroy_data;
|
||||
GstClock *clock;
|
||||
GstClockEntryType type;
|
||||
GstClockTime time;
|
||||
GstClockTime interval;
|
||||
GstClockReturn status;
|
||||
GstClockCallback func;
|
||||
gpointer user_data;
|
||||
GDestroyNotify destroy_data;
|
||||
gboolean unscheduled;
|
||||
gboolean woken_up;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
#include <gst/gstobject.h>
|
||||
|
@ -395,7 +397,7 @@ typedef enum {
|
|||
GST_CLOCK_FLAG_CAN_SET_RESOLUTION = (GST_OBJECT_FLAG_LAST << 4),
|
||||
GST_CLOCK_FLAG_CAN_SET_MASTER = (GST_OBJECT_FLAG_LAST << 5),
|
||||
/* padding */
|
||||
GST_CLOCK_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 8)
|
||||
GST_CLOCK_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 8)
|
||||
} GstClockFlags;
|
||||
|
||||
/**
|
||||
|
@ -445,22 +447,22 @@ typedef enum {
|
|||
* protected for subclasses, use the methods to use the #GstClock.
|
||||
*/
|
||||
struct _GstClock {
|
||||
GstObject object;
|
||||
GstObject object;
|
||||
|
||||
GMutex *slave_lock; /* order: SLAVE_LOCK, OBJECT_LOCK */
|
||||
GMutex *slave_lock; /* order: SLAVE_LOCK, OBJECT_LOCK */
|
||||
|
||||
/*< protected >*/ /* with LOCK */
|
||||
GstClockTime internal_calibration;
|
||||
GstClockTime external_calibration;
|
||||
GstClockTime rate_numerator;
|
||||
GstClockTime rate_denominator;
|
||||
GstClockTime last_time;
|
||||
GList *entries;
|
||||
GCond *entries_changed;
|
||||
GstClockTime internal_calibration;
|
||||
GstClockTime external_calibration;
|
||||
GstClockTime rate_numerator;
|
||||
GstClockTime rate_denominator;
|
||||
GstClockTime last_time;
|
||||
GList *entries;
|
||||
GCond *entries_changed;
|
||||
|
||||
/*< private >*/ /* with LOCK */
|
||||
GstClockTime resolution;
|
||||
gboolean stats;
|
||||
GstClockTime resolution;
|
||||
gboolean stats;
|
||||
|
||||
/* for master/slave clocks */
|
||||
GstClock *master;
|
||||
|
@ -475,10 +477,9 @@ struct _GstClock {
|
|||
GstClockID clockid;
|
||||
|
||||
/*< private >*/
|
||||
union {
|
||||
GstClockPrivate *priv;
|
||||
GstClockTime _gst_reserved[GST_PADDING];
|
||||
} ABI;
|
||||
GstClockPrivate *priv;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -504,83 +505,83 @@ struct _GstClockClass {
|
|||
/* vtable */
|
||||
GstClockTime (*change_resolution) (GstClock *clock,
|
||||
GstClockTime old_resolution,
|
||||
GstClockTime new_resolution);
|
||||
GstClockTime new_resolution);
|
||||
GstClockTime (*get_resolution) (GstClock *clock);
|
||||
|
||||
GstClockTime (*get_internal_time) (GstClock *clock);
|
||||
GstClockTime (*get_internal_time) (GstClock *clock);
|
||||
|
||||
/* waiting on an ID */
|
||||
GstClockReturn (*wait) (GstClock *clock, GstClockEntry *entry,
|
||||
GstClockTimeDiff *jitter);
|
||||
GstClockTimeDiff *jitter);
|
||||
GstClockReturn (*wait_async) (GstClock *clock, GstClockEntry *entry);
|
||||
void (*unschedule) (GstClock *clock, GstClockEntry *entry);
|
||||
void (*unschedule) (GstClock *clock, GstClockEntry *entry);
|
||||
|
||||
/*< private >*/
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
GType gst_clock_get_type (void);
|
||||
GType gst_clock_get_type (void);
|
||||
|
||||
GstClockTime gst_clock_set_resolution (GstClock *clock,
|
||||
GstClockTime gst_clock_set_resolution (GstClock *clock,
|
||||
GstClockTime resolution);
|
||||
GstClockTime gst_clock_get_resolution (GstClock *clock);
|
||||
GstClockTime gst_clock_get_resolution (GstClock *clock);
|
||||
|
||||
GstClockTime gst_clock_get_time (GstClock *clock);
|
||||
void gst_clock_set_calibration (GstClock *clock, GstClockTime internal,
|
||||
GstClockTime gst_clock_get_time (GstClock *clock);
|
||||
void gst_clock_set_calibration (GstClock *clock, GstClockTime internal,
|
||||
GstClockTime external,
|
||||
GstClockTime rate_num,
|
||||
GstClockTime rate_denom);
|
||||
void gst_clock_get_calibration (GstClock *clock, GstClockTime *internal,
|
||||
void gst_clock_get_calibration (GstClock *clock, GstClockTime *internal,
|
||||
GstClockTime *external,
|
||||
GstClockTime *rate_num,
|
||||
GstClockTime *rate_denom);
|
||||
|
||||
/* master/slave clocks */
|
||||
gboolean gst_clock_set_master (GstClock *clock, GstClock *master);
|
||||
GstClock* gst_clock_get_master (GstClock *clock);
|
||||
gboolean gst_clock_add_observation (GstClock *clock, GstClockTime slave,
|
||||
GstClockTime master, gdouble *r_squared);
|
||||
gboolean gst_clock_set_master (GstClock *clock, GstClock *master);
|
||||
GstClock* gst_clock_get_master (GstClock *clock);
|
||||
gboolean gst_clock_add_observation (GstClock *clock, GstClockTime slave,
|
||||
GstClockTime master, gdouble *r_squared);
|
||||
|
||||
|
||||
/* getting and adjusting internal/external time */
|
||||
GstClockTime gst_clock_get_internal_time (GstClock *clock);
|
||||
GstClockTime gst_clock_adjust_unlocked (GstClock *clock, GstClockTime internal);
|
||||
GstClockTime gst_clock_get_internal_time (GstClock *clock);
|
||||
GstClockTime gst_clock_adjust_unlocked (GstClock *clock, GstClockTime internal);
|
||||
GstClockTime gst_clock_unadjust_unlocked (GstClock * clock, GstClockTime external);
|
||||
|
||||
|
||||
/* creating IDs that can be used to get notifications */
|
||||
GstClockID gst_clock_new_single_shot_id (GstClock *clock,
|
||||
GstClockTime time);
|
||||
GstClockID gst_clock_new_periodic_id (GstClock *clock,
|
||||
GstClockTime start_time,
|
||||
GstClockTime interval);
|
||||
GstClockID gst_clock_new_single_shot_id (GstClock *clock,
|
||||
GstClockTime time);
|
||||
GstClockID gst_clock_new_periodic_id (GstClock *clock,
|
||||
GstClockTime start_time,
|
||||
GstClockTime interval);
|
||||
|
||||
/* reference counting */
|
||||
GstClockID gst_clock_id_ref (GstClockID id);
|
||||
void gst_clock_id_unref (GstClockID id);
|
||||
|
||||
/* operations on IDs */
|
||||
gint gst_clock_id_compare_func (gconstpointer id1, gconstpointer id2);
|
||||
gint gst_clock_id_compare_func (gconstpointer id1, gconstpointer id2);
|
||||
|
||||
GstClockTime gst_clock_id_get_time (GstClockID id);
|
||||
GstClockReturn gst_clock_id_wait (GstClockID id,
|
||||
GstClockTimeDiff *jitter);
|
||||
GstClockReturn gst_clock_id_wait_async (GstClockID id,
|
||||
GstClockCallback func,
|
||||
gpointer user_data);
|
||||
GstClockReturn gst_clock_id_wait_async_full (GstClockID id,
|
||||
GstClockCallback func,
|
||||
gpointer user_data,
|
||||
GDestroyNotify destroy_data);
|
||||
void gst_clock_id_unschedule (GstClockID id);
|
||||
GstClockTime gst_clock_id_get_time (GstClockID id);
|
||||
GstClockReturn gst_clock_id_wait (GstClockID id,
|
||||
GstClockTimeDiff *jitter);
|
||||
GstClockReturn gst_clock_id_wait_async (GstClockID id,
|
||||
GstClockCallback func,
|
||||
gpointer user_data);
|
||||
GstClockReturn gst_clock_id_wait_async_full (GstClockID id,
|
||||
GstClockCallback func,
|
||||
gpointer user_data,
|
||||
GDestroyNotify destroy_data);
|
||||
void gst_clock_id_unschedule (GstClockID id);
|
||||
|
||||
gboolean gst_clock_single_shot_id_reinit (GstClock * clock,
|
||||
GstClockID id,
|
||||
GstClockTime time);
|
||||
GstClockID id,
|
||||
GstClockTime time);
|
||||
gboolean gst_clock_periodic_id_reinit (GstClock * clock,
|
||||
GstClockID id,
|
||||
GstClockTime start_time,
|
||||
GstClockTime interval);
|
||||
GstClockID id,
|
||||
GstClockTime start_time,
|
||||
GstClockTime interval);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -59,7 +59,7 @@ typedef struct _GstValueArray GstValueArray;
|
|||
struct _GstTimedValue
|
||||
{
|
||||
GstClockTime timestamp;
|
||||
GValue value;
|
||||
GValue value;
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -74,12 +74,12 @@ struct _GstTimedValue
|
|||
struct _GstValueArray
|
||||
{
|
||||
const gchar *property_name;
|
||||
gint nbsamples;
|
||||
gint nbsamples;
|
||||
GstClockTime sample_interval;
|
||||
gpointer *values;
|
||||
};
|
||||
|
||||
/**
|
||||
/**
|
||||
* GstControlSourceGetValue
|
||||
* @self: the #GstControlSource instance
|
||||
* @timestamp: timestamp for which a value should be calculated
|
||||
|
@ -92,7 +92,7 @@ struct _GstValueArray
|
|||
*/
|
||||
typedef gboolean (* GstControlSourceGetValue) (GstControlSource *self, GstClockTime timestamp, GValue *value);
|
||||
|
||||
/**
|
||||
/**
|
||||
* GstControlSourceGetValueArray
|
||||
* @self: the #GstControlSource instance
|
||||
* @timestamp: timestamp for which a value should be calculated
|
||||
|
@ -105,7 +105,7 @@ typedef gboolean (* GstControlSourceGetValue) (GstControlSource *self, GstClockT
|
|||
*/
|
||||
typedef gboolean (* GstControlSourceGetValueArray) (GstControlSource *self, GstClockTime timestamp, GstValueArray *value_array);
|
||||
|
||||
/**
|
||||
/**
|
||||
* GstControlSourceBind
|
||||
* @self: the #GstControlSource instance
|
||||
* @pspec: #GParamSpec that should be bound to
|
||||
|
@ -146,7 +146,7 @@ struct _GstControlSource {
|
|||
struct _GstControlSourceClass
|
||||
{
|
||||
GObjectClass parent_class;
|
||||
|
||||
|
||||
GstControlSourceBind bind; /* Binds the GstControlSource to a specific GParamSpec */
|
||||
|
||||
/*< private >*/
|
||||
|
@ -156,10 +156,12 @@ struct _GstControlSourceClass
|
|||
GType gst_control_source_get_type (void);
|
||||
|
||||
/* Functions */
|
||||
gboolean gst_control_source_get_value (GstControlSource *self, GstClockTime timestamp,
|
||||
GValue *value);
|
||||
gboolean gst_control_source_get_value_array (GstControlSource *self, GstClockTime timestamp,
|
||||
GstValueArray *value_array);
|
||||
|
||||
gboolean gst_control_source_get_value (GstControlSource *self, GstClockTime timestamp, GValue *value);
|
||||
gboolean gst_control_source_get_value_array (GstControlSource *self, GstClockTime timestamp, GstValueArray *value_array);
|
||||
gboolean gst_control_source_bind (GstControlSource *self, GParamSpec *pspec);
|
||||
gboolean gst_control_source_bind (GstControlSource *self, GParamSpec *pspec);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -36,31 +36,31 @@ G_BEGIN_DECLS
|
|||
*/
|
||||
typedef struct _GstDateTime GstDateTime;
|
||||
|
||||
gint gst_date_time_get_year (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_month (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_day (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_hour (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_minute (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_second (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_microsecond (const GstDateTime * datetime);
|
||||
gfloat gst_date_time_get_time_zone_offset (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_year (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_month (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_day (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_hour (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_minute (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_second (const GstDateTime * datetime);
|
||||
gint gst_date_time_get_microsecond (const GstDateTime * datetime);
|
||||
gfloat gst_date_time_get_time_zone_offset (const GstDateTime * datetime);
|
||||
|
||||
GstDateTime *gst_date_time_new_from_unix_epoch_local_time (gint64 secs);
|
||||
GstDateTime *gst_date_time_new_from_unix_epoch_utc (gint64 secs);
|
||||
GstDateTime *gst_date_time_new_local_time (gint year, gint month,
|
||||
gint day, gint hour,
|
||||
gint minute,
|
||||
gdouble seconds);
|
||||
GstDateTime *gst_date_time_new (gfloat tzoffset,
|
||||
gint year, gint month,
|
||||
gint day, gint hour,
|
||||
gint minute,
|
||||
gdouble seconds);
|
||||
GstDateTime *gst_date_time_new_now_local_time (void);
|
||||
GstDateTime *gst_date_time_new_now_utc (void);
|
||||
GstDateTime * gst_date_time_new_from_unix_epoch_local_time (gint64 secs);
|
||||
GstDateTime * gst_date_time_new_from_unix_epoch_utc (gint64 secs);
|
||||
GstDateTime * gst_date_time_new_local_time (gint year, gint month,
|
||||
gint day, gint hour,
|
||||
gint minute,
|
||||
gdouble seconds);
|
||||
GstDateTime * gst_date_time_new (gfloat tzoffset,
|
||||
gint year, gint month,
|
||||
gint day, gint hour,
|
||||
gint minute,
|
||||
gdouble seconds);
|
||||
GstDateTime * gst_date_time_new_now_local_time (void);
|
||||
GstDateTime * gst_date_time_new_now_utc (void);
|
||||
|
||||
GstDateTime *gst_date_time_ref (GstDateTime * datetime);
|
||||
void gst_date_time_unref (GstDateTime * datetime);
|
||||
GstDateTime * gst_date_time_ref (GstDateTime * datetime);
|
||||
void gst_date_time_unref (GstDateTime * datetime);
|
||||
|
||||
G_END_DECLS
|
||||
#endif /* __GST_DATE_TIME_H__ */
|
||||
|
|
|
@ -254,7 +254,7 @@ typedef enum {
|
|||
* Sinks unblock any #GstClock wait calls.
|
||||
* </para></listitem>
|
||||
* <listitem><para>
|
||||
* When a sink does not have a pending buffer to play, it returns
|
||||
* When a sink does not have a pending buffer to play, it returns
|
||||
* %GST_STATE_CHANGE_ASYNC from this state change and completes the state
|
||||
* change when it receives a new buffer or an %GST_EVENT_EOS.
|
||||
* </para></listitem>
|
||||
|
@ -673,7 +673,7 @@ void gst_element_class_set_metadata (GstElementClass
|
|||
const gchar *author);
|
||||
void gst_element_class_add_metadata (GstElementClass * klass,
|
||||
const gchar * key, const gchar * value);
|
||||
const gchar * gst_element_class_get_metadata (GstElementClass * klass,
|
||||
const gchar * gst_element_class_get_metadata (GstElementClass * klass,
|
||||
const gchar * key);
|
||||
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ struct _GstElementFactory {
|
|||
|
||||
GType type; /* unique GType of element or 0 if not loaded */
|
||||
|
||||
gpointer metadata;
|
||||
gpointer metadata;
|
||||
|
||||
GList * staticpadtemplates; /* GstStaticPadTemplate list */
|
||||
guint numpadtemplates;
|
||||
|
@ -167,7 +167,7 @@ typedef guint64 GstElementFactoryListType;
|
|||
* Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types
|
||||
*
|
||||
* Note: Do not use this if you wish to not filter against any of the defined
|
||||
* media types. If you wish to do this, simply don't specify any
|
||||
* media types. If you wish to do this, simply don't specify any
|
||||
* GST_ELEMENT_FACTORY_TYPE_MEDIA flag.
|
||||
*
|
||||
* Since: 0.10.31
|
||||
|
@ -212,33 +212,33 @@ typedef guint64 GstElementFactoryListType;
|
|||
(GST_ELEMENT_FACTORY_TYPE_DECODER | GST_ELEMENT_FACTORY_TYPE_DEMUXER | GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER | GST_ELEMENT_FACTORY_TYPE_PARSER)
|
||||
|
||||
/* Element klass defines */
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DECODER "Decoder"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_ENCODER "Encoder"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_SINK "Sink"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_SRC "Source"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MUXER "Muxer"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DEMUXER "Demuxer"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_PARSER "Parser"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_PAYLOADER "Payloader"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER "Depayloader"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_FORMATTER "Formatter"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DECODER "Decoder"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_ENCODER "Encoder"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_SINK "Sink"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_SRC "Source"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MUXER "Muxer"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DEMUXER "Demuxer"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_PARSER "Parser"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_PAYLOADER "Payloader"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER "Depayloader"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_FORMATTER "Formatter"
|
||||
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO "Video"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO "Audio"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE "Image"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE "Subtitle"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA "Metadata"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO "Video"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO "Audio"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE "Image"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE "Subtitle"
|
||||
#define GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA "Metadata"
|
||||
|
||||
gboolean gst_element_factory_list_is_type (GstElementFactory *factory,
|
||||
GstElementFactoryListType type);
|
||||
GstElementFactoryListType type);
|
||||
|
||||
GList * gst_element_factory_list_get_elements (GstElementFactoryListType type,
|
||||
GstRank minrank);
|
||||
GstRank minrank);
|
||||
|
||||
|
||||
GList * gst_element_factory_list_filter (GList *list, const GstCaps *caps,
|
||||
GstPadDirection direction,
|
||||
gboolean subsetonly);
|
||||
GstPadDirection direction,
|
||||
gboolean subsetonly);
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GST_ELEMENT_FACTORY_H__ */
|
||||
|
|
|
@ -50,12 +50,12 @@ G_BEGIN_DECLS
|
|||
/* NOTE: don't forget to update the table in gstformat.c when changing
|
||||
* this enum */
|
||||
typedef enum {
|
||||
GST_FORMAT_UNDEFINED = 0, /* must be first in list */
|
||||
GST_FORMAT_DEFAULT = 1,
|
||||
GST_FORMAT_BYTES = 2,
|
||||
GST_FORMAT_TIME = 3,
|
||||
GST_FORMAT_BUFFERS = 4,
|
||||
GST_FORMAT_PERCENT = 5
|
||||
GST_FORMAT_UNDEFINED = 0, /* must be first in list */
|
||||
GST_FORMAT_DEFAULT = 1,
|
||||
GST_FORMAT_BYTES = 2,
|
||||
GST_FORMAT_TIME = 3,
|
||||
GST_FORMAT_BUFFERS = 4,
|
||||
GST_FORMAT_PERCENT = 5
|
||||
} GstFormat;
|
||||
|
||||
/* a percentage is always relative to 1000000 */
|
||||
|
@ -64,14 +64,14 @@ typedef enum {
|
|||
*
|
||||
* The PERCENT format is between 0 and this value
|
||||
*/
|
||||
#define GST_FORMAT_PERCENT_MAX G_GINT64_CONSTANT (1000000)
|
||||
#define GST_FORMAT_PERCENT_MAX G_GINT64_CONSTANT (1000000)
|
||||
/**
|
||||
* GST_FORMAT_PERCENT_SCALE:
|
||||
*
|
||||
* The value used to scale down the reported PERCENT format value to
|
||||
* its real value.
|
||||
*/
|
||||
#define GST_FORMAT_PERCENT_SCALE G_GINT64_CONSTANT (10000)
|
||||
#define GST_FORMAT_PERCENT_SCALE G_GINT64_CONSTANT (10000)
|
||||
|
||||
typedef struct _GstFormatDefinition GstFormatDefinition;
|
||||
|
||||
|
@ -96,17 +96,17 @@ const gchar* gst_format_get_name (GstFormat format);
|
|||
GQuark gst_format_to_quark (GstFormat format);
|
||||
|
||||
/* register a new format */
|
||||
GstFormat gst_format_register (const gchar *nick,
|
||||
const gchar *description);
|
||||
GstFormat gst_format_get_by_nick (const gchar *nick);
|
||||
GstFormat gst_format_register (const gchar *nick,
|
||||
const gchar *description);
|
||||
GstFormat gst_format_get_by_nick (const gchar *nick);
|
||||
|
||||
/* check if a format is in an array of formats */
|
||||
gboolean gst_formats_contains (const GstFormat *formats, GstFormat format);
|
||||
gboolean gst_formats_contains (const GstFormat *formats, GstFormat format);
|
||||
|
||||
/* query for format details */
|
||||
const GstFormatDefinition*
|
||||
gst_format_get_details (GstFormat format);
|
||||
GstIterator* gst_format_iterate_definitions (void);
|
||||
gst_format_get_details (GstFormat format);
|
||||
GstIterator* gst_format_iterate_definitions (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -72,12 +72,12 @@ GstCaps* gst_proxy_pad_getcaps_default (GstPad *pad, G
|
|||
gboolean gst_proxy_pad_acceptcaps_default (GstPad *pad, GstCaps *caps);
|
||||
void gst_proxy_pad_unlink_default (GstPad * pad);
|
||||
|
||||
#define GST_TYPE_GHOST_PAD (gst_ghost_pad_get_type ())
|
||||
#define GST_IS_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GHOST_PAD))
|
||||
#define GST_IS_GHOST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_GHOST_PAD))
|
||||
#define GST_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_GHOST_PAD, GstGhostPad))
|
||||
#define GST_GHOST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_GHOST_PAD, GstGhostPadClass))
|
||||
#define GST_GHOST_PAD_CAST(obj) ((GstGhostPad*)(obj))
|
||||
#define GST_TYPE_GHOST_PAD (gst_ghost_pad_get_type ())
|
||||
#define GST_IS_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GHOST_PAD))
|
||||
#define GST_IS_GHOST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_GHOST_PAD))
|
||||
#define GST_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_GHOST_PAD, GstGhostPad))
|
||||
#define GST_GHOST_PAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_GHOST_PAD, GstGhostPadClass))
|
||||
#define GST_GHOST_PAD_CAST(obj) ((GstGhostPad*)(obj))
|
||||
|
||||
/**
|
||||
* GstGhostPad:
|
||||
|
@ -105,18 +105,18 @@ struct _GstGhostPadClass
|
|||
};
|
||||
|
||||
|
||||
GType gst_ghost_pad_get_type (void);
|
||||
GType gst_ghost_pad_get_type (void);
|
||||
|
||||
GstPad* gst_ghost_pad_new (const gchar *name, GstPad *target);
|
||||
GstPad* gst_ghost_pad_new_no_target (const gchar *name, GstPadDirection dir);
|
||||
GstPad* gst_ghost_pad_new (const gchar *name, GstPad *target);
|
||||
GstPad* gst_ghost_pad_new_no_target (const gchar *name, GstPadDirection dir);
|
||||
|
||||
GstPad* gst_ghost_pad_new_from_template (const gchar *name, GstPad * target, GstPadTemplate * templ);
|
||||
GstPad* gst_ghost_pad_new_no_target_from_template (const gchar *name, GstPadTemplate * templ);
|
||||
GstPad* gst_ghost_pad_new_from_template (const gchar *name, GstPad * target, GstPadTemplate * templ);
|
||||
GstPad* gst_ghost_pad_new_no_target_from_template (const gchar *name, GstPadTemplate * templ);
|
||||
|
||||
GstPad* gst_ghost_pad_get_target (GstGhostPad *gpad);
|
||||
gboolean gst_ghost_pad_set_target (GstGhostPad *gpad, GstPad *newtarget);
|
||||
GstPad* gst_ghost_pad_get_target (GstGhostPad *gpad);
|
||||
gboolean gst_ghost_pad_set_target (GstGhostPad *gpad, GstPad *newtarget);
|
||||
|
||||
gboolean gst_ghost_pad_construct (GstGhostPad *gpad);
|
||||
gboolean gst_ghost_pad_construct (GstGhostPad *gpad);
|
||||
|
||||
void gst_ghost_pad_unlink_default (GstPad * pad);
|
||||
GstPadLinkReturn gst_ghost_pad_link_default (GstPad * pad, GstPad * peer);
|
||||
|
|
|
@ -318,7 +318,7 @@ typedef enum {
|
|||
|
||||
/**
|
||||
* GstIndex:
|
||||
*
|
||||
*
|
||||
* Opaque #GstIndex structure.
|
||||
*/
|
||||
struct _GstIndex {
|
||||
|
|
|
@ -30,12 +30,12 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_INDEX_FACTORY (gst_index_factory_get_type())
|
||||
#define GST_INDEX_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_INDEX_FACTORY, GstIndexFactory))
|
||||
#define GST_IS_INDEX_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_INDEX_FACTORY))
|
||||
#define GST_INDEX_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_INDEX_FACTORY, GstIndexFactoryClass))
|
||||
#define GST_IS_INDEX_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_INDEX_FACTORY))
|
||||
#define GST_INDEX_FACTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_INDEX_FACTORY, GstIndexFactoryClass))
|
||||
#define GST_TYPE_INDEX_FACTORY (gst_index_factory_get_type())
|
||||
#define GST_INDEX_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_INDEX_FACTORY, GstIndexFactory))
|
||||
#define GST_IS_INDEX_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_INDEX_FACTORY))
|
||||
#define GST_INDEX_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_INDEX_FACTORY, GstIndexFactoryClass))
|
||||
#define GST_IS_INDEX_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_INDEX_FACTORY))
|
||||
#define GST_INDEX_FACTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_INDEX_FACTORY, GstIndexFactoryClass))
|
||||
|
||||
typedef struct _GstIndexFactory GstIndexFactory;
|
||||
typedef struct _GstIndexFactoryClass GstIndexFactoryClass;
|
||||
|
@ -60,16 +60,16 @@ struct _GstIndexFactoryClass {
|
|||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
GType gst_index_factory_get_type (void);
|
||||
GType gst_index_factory_get_type (void);
|
||||
|
||||
GstIndexFactory* gst_index_factory_new (const gchar *name,
|
||||
const gchar *longdesc, GType type);
|
||||
void gst_index_factory_destroy (GstIndexFactory *factory);
|
||||
GstIndexFactory* gst_index_factory_new (const gchar *name,
|
||||
const gchar *longdesc, GType type);
|
||||
void gst_index_factory_destroy (GstIndexFactory *factory);
|
||||
|
||||
GstIndexFactory* gst_index_factory_find (const gchar *name);
|
||||
GstIndexFactory* gst_index_factory_find (const gchar *name);
|
||||
|
||||
GstIndex* gst_index_factory_create (GstIndexFactory *factory);
|
||||
GstIndex* gst_index_factory_make (const gchar *name);
|
||||
GstIndex* gst_index_factory_create (GstIndexFactory *factory);
|
||||
GstIndex* gst_index_factory_make (const gchar *name);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -40,10 +40,10 @@ G_BEGIN_DECLS
|
|||
* The result of gst_iterator_next().
|
||||
*/
|
||||
typedef enum {
|
||||
GST_ITERATOR_DONE = 0,
|
||||
GST_ITERATOR_OK = 1,
|
||||
GST_ITERATOR_RESYNC = 2,
|
||||
GST_ITERATOR_ERROR = 3
|
||||
GST_ITERATOR_DONE = 0,
|
||||
GST_ITERATOR_OK = 1,
|
||||
GST_ITERATOR_RESYNC = 2,
|
||||
GST_ITERATOR_ERROR = 3
|
||||
} GstIteratorResult;
|
||||
|
||||
typedef struct _GstIterator GstIterator;
|
||||
|
@ -57,9 +57,9 @@ typedef struct _GstIterator GstIterator;
|
|||
* The result of a #GstIteratorItemFunction.
|
||||
*/
|
||||
typedef enum {
|
||||
GST_ITERATOR_ITEM_SKIP = 0,
|
||||
GST_ITERATOR_ITEM_PASS = 1,
|
||||
GST_ITERATOR_ITEM_END = 2
|
||||
GST_ITERATOR_ITEM_SKIP = 0,
|
||||
GST_ITERATOR_ITEM_PASS = 1,
|
||||
GST_ITERATOR_ITEM_END = 2
|
||||
} GstIteratorItem;
|
||||
|
||||
/**
|
||||
|
@ -94,7 +94,7 @@ typedef GstIteratorItem (*GstIteratorItemFunction) (GstIterator *it, const
|
|||
* @result: a pointer to hold the next item
|
||||
*
|
||||
* The function that will be called when the next element of the iterator
|
||||
* should be retrieved.
|
||||
* should be retrieved.
|
||||
*
|
||||
* Implementors of a #GstIterator should implement this
|
||||
* function and pass it to the constructor of the custom iterator.
|
||||
|
@ -102,7 +102,7 @@ typedef GstIteratorItem (*GstIteratorItemFunction) (GstIterator *it, const
|
|||
*
|
||||
* Returns: the result of the operation.
|
||||
*/
|
||||
typedef GstIteratorResult (*GstIteratorNextFunction) (GstIterator *it, GValue *result);
|
||||
typedef GstIteratorResult (*GstIteratorNextFunction) (GstIterator *it, GValue *result);
|
||||
/**
|
||||
* GstIteratorResyncFunction:
|
||||
* @it: the iterator
|
||||
|
@ -116,7 +116,7 @@ typedef GstIteratorResult (*GstIteratorNextFunction) (GstIterator *it, GValue *r
|
|||
* function and pass it to the constructor of the custom iterator.
|
||||
* The function will be called with the iterator lock held.
|
||||
*/
|
||||
typedef void (*GstIteratorResyncFunction) (GstIterator *it);
|
||||
typedef void (*GstIteratorResyncFunction) (GstIterator *it);
|
||||
/**
|
||||
* GstIteratorFreeFunction:
|
||||
* @it: the iterator
|
||||
|
@ -127,7 +127,7 @@ typedef void (*GstIteratorResyncFunction) (GstIterator *it);
|
|||
* function and pass it to the constructor of the custom iterator.
|
||||
* The function will be called with the iterator lock held.
|
||||
*/
|
||||
typedef void (*GstIteratorFreeFunction) (GstIterator *it);
|
||||
typedef void (*GstIteratorFreeFunction) (GstIterator *it);
|
||||
|
||||
/**
|
||||
* GstIteratorForeachFunction:
|
||||
|
@ -148,7 +148,7 @@ typedef void (*GstIteratorForeachFunction) (const GValue * item, gpo
|
|||
*
|
||||
* Returns: TRUE if the fold should continue, FALSE if it should stop.
|
||||
*/
|
||||
typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue * ret, gpointer user_data);
|
||||
typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue * ret, gpointer user_data);
|
||||
|
||||
/**
|
||||
* GST_ITERATOR:
|
||||
|
@ -156,14 +156,14 @@ typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue *
|
|||
*
|
||||
* Macro to cast to a #GstIterator
|
||||
*/
|
||||
#define GST_ITERATOR(it) ((GstIterator*)(it))
|
||||
#define GST_ITERATOR(it) ((GstIterator*)(it))
|
||||
/**
|
||||
* GST_ITERATOR_LOCK:
|
||||
* @it: the #GstIterator to get the lock of
|
||||
*
|
||||
* Macro to get the lock protecting the datastructure being iterated.
|
||||
*/
|
||||
#define GST_ITERATOR_LOCK(it) (GST_ITERATOR(it)->lock)
|
||||
#define GST_ITERATOR_LOCK(it) (GST_ITERATOR(it)->lock)
|
||||
/**
|
||||
* GST_ITERATOR_COOKIE:
|
||||
* @it: the #GstIterator to get the cookie of
|
||||
|
@ -175,7 +175,7 @@ typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue *
|
|||
* value of the master cookie. If they are different, a concurrent
|
||||
* modification happened to the iterator and a resync is needed.
|
||||
*/
|
||||
#define GST_ITERATOR_COOKIE(it) (GST_ITERATOR(it)->cookie)
|
||||
#define GST_ITERATOR_COOKIE(it) (GST_ITERATOR(it)->cookie)
|
||||
/**
|
||||
* GST_ITERATOR_ORIG_COOKIE:
|
||||
* @it: the #GstIterator to get the master cookie of
|
||||
|
@ -184,7 +184,7 @@ typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue *
|
|||
* master cookie protects the structure being iterated and gets updated
|
||||
* whenever the datastructure changes.
|
||||
*/
|
||||
#define GST_ITERATOR_ORIG_COOKIE(it) (GST_ITERATOR(it)->master_cookie)
|
||||
#define GST_ITERATOR_ORIG_COOKIE(it) (GST_ITERATOR(it)->master_cookie)
|
||||
|
||||
/**
|
||||
* GstIterator:
|
||||
|
@ -201,7 +201,7 @@ typedef gboolean (*GstIteratorFoldFunction) (const GValue * item, GValue *
|
|||
* @master_cookie: A pointer to the master cookie.
|
||||
* @size: the size of the iterator
|
||||
*
|
||||
* #GstIterator base structure. The values of this structure are
|
||||
* #GstIterator base structure. The values of this structure are
|
||||
* protected for subclasses, use the methods to use the #GstIterator.
|
||||
*/
|
||||
struct _GstIterator {
|
||||
|
@ -212,13 +212,13 @@ struct _GstIterator {
|
|||
GstIteratorResyncFunction resync;
|
||||
GstIteratorFreeFunction free;
|
||||
|
||||
GstIterator *pushed; /* pushed iterator */
|
||||
GstIterator *pushed; /* pushed iterator */
|
||||
|
||||
GType type;
|
||||
GMutex *lock;
|
||||
guint32 cookie; /* cookie of the iterator */
|
||||
guint32 *master_cookie; /* pointer to guint32 holding the cookie when this
|
||||
iterator was created */
|
||||
guint32 cookie; /* cookie of the iterator */
|
||||
guint32 *master_cookie; /* pointer to guint32 holding the cookie when this
|
||||
iterator was created */
|
||||
guint size;
|
||||
|
||||
/*< private >*/
|
||||
|
@ -228,21 +228,21 @@ struct _GstIterator {
|
|||
GType gst_iterator_get_type (void);
|
||||
|
||||
/* creating iterators */
|
||||
GstIterator* gst_iterator_new (guint size,
|
||||
GType type,
|
||||
GMutex *lock,
|
||||
guint32 *master_cookie,
|
||||
GstIterator* gst_iterator_new (guint size,
|
||||
GType type,
|
||||
GMutex *lock,
|
||||
guint32 *master_cookie,
|
||||
GstIteratorCopyFunction copy,
|
||||
GstIteratorNextFunction next,
|
||||
GstIteratorNextFunction next,
|
||||
GstIteratorItemFunction item,
|
||||
GstIteratorResyncFunction resync,
|
||||
GstIteratorFreeFunction free);
|
||||
GstIteratorResyncFunction resync,
|
||||
GstIteratorFreeFunction free);
|
||||
|
||||
GstIterator* gst_iterator_new_list (GType type,
|
||||
GMutex *lock,
|
||||
guint32 *master_cookie,
|
||||
GList **list,
|
||||
GObject * owner,
|
||||
GstIterator* gst_iterator_new_list (GType type,
|
||||
GMutex *lock,
|
||||
guint32 *master_cookie,
|
||||
GList **list,
|
||||
GObject * owner,
|
||||
GstIteratorItemFunction item);
|
||||
|
||||
GstIterator* gst_iterator_new_single (GType type,
|
||||
|
@ -251,21 +251,21 @@ GstIterator* gst_iterator_new_single (GType type,
|
|||
GstIterator* gst_iterator_copy (const GstIterator *it);
|
||||
|
||||
/* using iterators */
|
||||
GstIteratorResult gst_iterator_next (GstIterator *it, GValue * elem);
|
||||
void gst_iterator_resync (GstIterator *it);
|
||||
void gst_iterator_free (GstIterator *it);
|
||||
GstIteratorResult gst_iterator_next (GstIterator *it, GValue * elem);
|
||||
void gst_iterator_resync (GstIterator *it);
|
||||
void gst_iterator_free (GstIterator *it);
|
||||
|
||||
void gst_iterator_push (GstIterator *it, GstIterator *other);
|
||||
void gst_iterator_push (GstIterator *it, GstIterator *other);
|
||||
|
||||
/* higher-order functions that operate on iterators */
|
||||
GstIterator* gst_iterator_filter (GstIterator *it, GCompareFunc func,
|
||||
GstIterator* gst_iterator_filter (GstIterator *it, GCompareFunc func,
|
||||
const GValue * user_data);
|
||||
GstIteratorResult gst_iterator_fold (GstIterator *it,
|
||||
GstIteratorResult gst_iterator_fold (GstIterator *it,
|
||||
GstIteratorFoldFunction func,
|
||||
GValue *ret, gpointer user_data);
|
||||
GstIteratorResult gst_iterator_foreach (GstIterator *it,
|
||||
GstIteratorResult gst_iterator_foreach (GstIterator *it,
|
||||
GstIteratorForeachFunction func, gpointer user_data);
|
||||
gboolean gst_iterator_find_custom (GstIterator *it, GCompareFunc func,
|
||||
gboolean gst_iterator_find_custom (GstIterator *it, GCompareFunc func,
|
||||
GValue *elem, gpointer user_data);
|
||||
|
||||
G_END_DECLS
|
||||
|
|
|
@ -265,6 +265,8 @@ struct _GstMemoryInfo {
|
|||
GstMemoryIsSpanFunction is_span;
|
||||
|
||||
gpointer user_data;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
/* allocators */
|
||||
|
|
|
@ -106,6 +106,8 @@ struct _GstMetaInfo {
|
|||
GstMetaFreeFunction free_func;
|
||||
GstMetaCopyFunction copy_func;
|
||||
GstMetaTransformFunction transform_func;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
const GstMetaInfo * gst_meta_register (const gchar *api, const gchar *impl,
|
||||
|
|
|
@ -71,7 +71,7 @@ typedef void (*GstMiniObjectFreeFunction) (GstMiniObject *obj);
|
|||
* GstMiniObjectWeakNotify:
|
||||
* @data: data that was provided when the weak reference was established
|
||||
* @where_the_mini_object_was: the mini object being finalized
|
||||
*
|
||||
*
|
||||
* A #GstMiniObjectWeakNotify function can be added to a mini object as a
|
||||
* callback that gets triggered when the mini object is finalized. Since the
|
||||
* mini object is already being finalized when the #GstMiniObjectWeakNotify is
|
||||
|
|
|
@ -171,9 +171,9 @@ struct _GstObject {
|
|||
guint32 flags;
|
||||
|
||||
/*< private >*/
|
||||
GList *properties; /* List of GstControlledProperty */
|
||||
guint64 control_rate;
|
||||
guint64 last_sync;
|
||||
GList *properties; /* List of GstControlledProperty */
|
||||
guint64 control_rate;
|
||||
guint64 last_sync;
|
||||
|
||||
gpointer _gst_reserved;
|
||||
};
|
||||
|
@ -234,25 +234,32 @@ gboolean gst_object_check_uniqueness (GList *list, const gchar *name);
|
|||
/* controller functions */
|
||||
#include <gst/gstcontrolsource.h>
|
||||
|
||||
gboolean gst_object_control_properties (GstObject * object, ...) G_GNUC_NULL_TERMINATED;
|
||||
gboolean gst_object_uncontrol_properties (GstObject * object, ...) G_GNUC_NULL_TERMINATED;
|
||||
gboolean gst_object_control_properties (GstObject * object, ...) G_GNUC_NULL_TERMINATED;
|
||||
gboolean gst_object_uncontrol_properties (GstObject * object, ...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
GstClockTime gst_object_suggest_next_sync (GstObject * object);
|
||||
gboolean gst_object_sync_values (GstObject * object, GstClockTime timestamp);
|
||||
GstClockTime gst_object_suggest_next_sync (GstObject * object);
|
||||
gboolean gst_object_sync_values (GstObject * object, GstClockTime timestamp);
|
||||
|
||||
gboolean gst_object_has_active_controlled_properties (GstObject *object);
|
||||
void gst_object_set_controlled_properties_disabled (GstObject *object, gboolean disabled);
|
||||
void gst_object_set_controlled_property_disabled (GstObject *object, const gchar * property_name, gboolean disabled);
|
||||
gboolean gst_object_has_active_controlled_properties (GstObject *object);
|
||||
void gst_object_set_controlled_properties_disabled (GstObject *object, gboolean disabled);
|
||||
void gst_object_set_controlled_property_disabled (GstObject *object,
|
||||
const gchar * property_name,
|
||||
gboolean disabled);
|
||||
|
||||
gboolean gst_object_set_control_source (GstObject *object, const gchar * property_name, GstControlSource *csource);
|
||||
GstControlSource * gst_object_get_control_source (GstObject *object, const gchar * property_name);
|
||||
gboolean gst_object_set_control_source (GstObject *object, const gchar * property_name,
|
||||
GstControlSource *csource);
|
||||
GstControlSource *
|
||||
gst_object_get_control_source (GstObject *object, const gchar * property_name);
|
||||
|
||||
GValue *gst_object_get_value (GstObject * object, const gchar * property_name, GstClockTime timestamp);
|
||||
gboolean gst_object_get_value_arrays (GstObject * object, GstClockTime timestamp, GSList * value_arrays);
|
||||
gboolean gst_object_get_value_array (GstObject * object, GstClockTime timestamp, GstValueArray * value_array);
|
||||
GValue * gst_object_get_value (GstObject * object, const gchar * property_name,
|
||||
GstClockTime timestamp);
|
||||
gboolean gst_object_get_value_arrays (GstObject * object, GstClockTime timestamp,
|
||||
GSList * value_arrays);
|
||||
gboolean gst_object_get_value_array (GstObject * object, GstClockTime timestamp,
|
||||
GstValueArray * value_array);
|
||||
|
||||
GstClockTime gst_object_get_control_rate (GstObject * object);
|
||||
void gst_object_set_control_rate (GstObject * object, GstClockTime control_rate);
|
||||
GstClockTime gst_object_get_control_rate (GstObject * object);
|
||||
void gst_object_set_control_rate (GstObject * object, GstClockTime control_rate);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -520,6 +520,8 @@ typedef struct
|
|||
gpointer data;
|
||||
guint64 offset;
|
||||
guint size;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
} GstPadProbeInfo;
|
||||
|
||||
#define GST_PAD_PROBE_INFO_TYPE(d) ((d)->type)
|
||||
|
@ -557,8 +559,8 @@ typedef GstPadProbeReturn (*GstPadProbeCallback) (GstPad *pad, GstPadProbeIn
|
|||
*
|
||||
* Returns: GST_FLOW_OK if the iteration should continue
|
||||
*/
|
||||
typedef GstFlowReturn (*GstPadStickyEventsForeachFunction) (GstPad *pad, GstEvent *event,
|
||||
gpointer user_data);
|
||||
typedef GstFlowReturn (*GstPadStickyEventsForeachFunction) (GstPad *pad, GstEvent *event,
|
||||
gpointer user_data);
|
||||
|
||||
/**
|
||||
* GstPadFlags:
|
||||
|
|
|
@ -138,7 +138,7 @@ struct _GstPadTemplateClass {
|
|||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
/**
|
||||
/**
|
||||
* GstStaticPadTemplate:
|
||||
* @name_template: the name of the template
|
||||
* @direction: the direction of the template
|
||||
|
|
|
@ -105,7 +105,7 @@ typedef struct _GstParamSpecFraction GstParamSpecFraction;
|
|||
*/
|
||||
struct _GstParamSpecFraction {
|
||||
GParamSpec parent_instance;
|
||||
|
||||
|
||||
gint min_num, min_den;
|
||||
gint max_num, max_den;
|
||||
gint def_num, def_den;
|
||||
|
|
|
@ -28,13 +28,13 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_PIPELINE (gst_pipeline_get_type ())
|
||||
#define GST_PIPELINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PIPELINE, GstPipeline))
|
||||
#define GST_IS_PIPELINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_PIPELINE))
|
||||
#define GST_PIPELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_PIPELINE, GstPipelineClass))
|
||||
#define GST_IS_PIPELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_PIPELINE))
|
||||
#define GST_PIPELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_PIPELINE, GstPipelineClass))
|
||||
#define GST_PIPELINE_CAST(obj) ((GstPipeline*)(obj))
|
||||
#define GST_TYPE_PIPELINE (gst_pipeline_get_type ())
|
||||
#define GST_PIPELINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_PIPELINE, GstPipeline))
|
||||
#define GST_IS_PIPELINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_PIPELINE))
|
||||
#define GST_PIPELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_PIPELINE, GstPipelineClass))
|
||||
#define GST_IS_PIPELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_PIPELINE))
|
||||
#define GST_PIPELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_PIPELINE, GstPipelineClass))
|
||||
#define GST_PIPELINE_CAST(obj) ((GstPipeline*)(obj))
|
||||
|
||||
typedef struct _GstPipeline GstPipeline;
|
||||
typedef struct _GstPipelineClass GstPipelineClass;
|
||||
|
@ -55,7 +55,7 @@ typedef enum {
|
|||
|
||||
/**
|
||||
* GstPipeline:
|
||||
* @fixed_clock: The fixed clock of the pipeline, used when
|
||||
* @fixed_clock: The fixed clock of the pipeline, used when
|
||||
* GST_PIPELINE_FLAG_FIXED_CLOCK is set.
|
||||
* @stream_time: The stream time of the pipeline. A better name for this
|
||||
* property would be the running_time, the total time spent in the
|
||||
|
@ -67,18 +67,18 @@ typedef enum {
|
|||
* The #GstPipeline structure.
|
||||
*/
|
||||
struct _GstPipeline {
|
||||
GstBin bin;
|
||||
GstBin bin;
|
||||
|
||||
/*< public >*/ /* with LOCK */
|
||||
GstClock *fixed_clock;
|
||||
|
||||
GstClockTime stream_time;
|
||||
GstClockTime stream_time;
|
||||
GstClockTime delay;
|
||||
|
||||
/*< private >*/
|
||||
GstPipelinePrivate *priv;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING-1];
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
struct _GstPipelineClass {
|
||||
|
@ -88,10 +88,10 @@ struct _GstPipelineClass {
|
|||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
GType gst_pipeline_get_type (void);
|
||||
GstElement* gst_pipeline_new (const gchar *name);
|
||||
GType gst_pipeline_get_type (void);
|
||||
GstElement* gst_pipeline_new (const gchar *name);
|
||||
|
||||
GstBus* gst_pipeline_get_bus (GstPipeline *pipeline);
|
||||
GstBus* gst_pipeline_get_bus (GstPipeline *pipeline);
|
||||
|
||||
void gst_pipeline_use_clock (GstPipeline *pipeline, GstClock *clock);
|
||||
gboolean gst_pipeline_set_clock (GstPipeline *pipeline, GstClock *clock);
|
||||
|
|
|
@ -213,6 +213,7 @@ struct _GstPlugin {
|
|||
* that matches the plugin's basename */
|
||||
|
||||
GstPluginPrivate *priv;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
|
@ -341,12 +342,11 @@ GstPlugin * gst_plugin_load_file (const gchar *filename, GError** error);
|
|||
GstPlugin * gst_plugin_load (GstPlugin *plugin);
|
||||
GstPlugin * gst_plugin_load_by_name (const gchar *name);
|
||||
|
||||
void gst_plugin_add_dependency (GstPlugin * plugin,
|
||||
const gchar ** env_vars,
|
||||
const gchar ** paths,
|
||||
const gchar ** names,
|
||||
GstPluginDependencyFlags flags);
|
||||
|
||||
void gst_plugin_add_dependency (GstPlugin * plugin,
|
||||
const gchar ** env_vars,
|
||||
const gchar ** paths,
|
||||
const gchar ** names,
|
||||
GstPluginDependencyFlags flags);
|
||||
void gst_plugin_add_dependency_simple (GstPlugin * plugin,
|
||||
const gchar * env_vars,
|
||||
const gchar * paths,
|
||||
|
|
|
@ -100,7 +100,7 @@ struct _GstPluginFeature {
|
|||
GstPlugin *plugin; /* weak ref */
|
||||
|
||||
/*< private >*/
|
||||
gpointer _gst_reserved[GST_PADDING - 1];
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
struct _GstPluginFeatureClass {
|
||||
|
|
|
@ -26,10 +26,10 @@ G_BEGIN_DECLS
|
|||
typedef struct _GstPluginLoader GstPluginLoader;
|
||||
|
||||
typedef struct _GstPluginLoaderFuncs {
|
||||
GstPluginLoader * (*create)(GstRegistry *registry);
|
||||
gboolean (*destroy)(GstPluginLoader *loader);
|
||||
gboolean (*load)(GstPluginLoader *loader, const gchar *filename,
|
||||
off_t file_size, time_t file_mtime);
|
||||
GstPluginLoader * (*create) (GstRegistry *registry);
|
||||
gboolean (*destroy) (GstPluginLoader *loader);
|
||||
gboolean (*load) (GstPluginLoader *loader, const gchar *filename,
|
||||
off_t file_size, time_t file_mtime);
|
||||
} GstPluginLoaderFuncs;
|
||||
|
||||
extern const GstPluginLoaderFuncs _priv_gst_plugin_loader_funcs;
|
||||
|
|
|
@ -67,7 +67,7 @@ struct _GstPresetInterface
|
|||
gboolean (*rename_preset) (GstPreset *preset, const gchar *old_name,
|
||||
const gchar *new_name);
|
||||
gboolean (*delete_preset) (GstPreset *preset, const gchar *name);
|
||||
|
||||
|
||||
gboolean (*set_meta) (GstPreset *preset, const gchar *name,
|
||||
const gchar *tag, const gchar *value);
|
||||
gboolean (*get_meta) (GstPreset *preset, const gchar *name,
|
||||
|
|
|
@ -30,12 +30,12 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_REGISTRY (gst_registry_get_type ())
|
||||
#define GST_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_REGISTRY, GstRegistry))
|
||||
#define GST_IS_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_REGISTRY))
|
||||
#define GST_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_REGISTRY, GstRegistryClass))
|
||||
#define GST_IS_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_REGISTRY))
|
||||
#define GST_REGISTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_REGISTRY, GstRegistryClass))
|
||||
#define GST_TYPE_REGISTRY (gst_registry_get_type ())
|
||||
#define GST_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_REGISTRY, GstRegistry))
|
||||
#define GST_IS_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_REGISTRY))
|
||||
#define GST_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_REGISTRY, GstRegistryClass))
|
||||
#define GST_IS_REGISTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_REGISTRY))
|
||||
#define GST_REGISTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_REGISTRY, GstRegistryClass))
|
||||
|
||||
typedef struct _GstRegistry GstRegistry;
|
||||
typedef struct _GstRegistryClass GstRegistryClass;
|
||||
|
@ -47,13 +47,13 @@ typedef struct _GstRegistryPrivate GstRegistryPrivate;
|
|||
* Opaque #GstRegistry structure.
|
||||
*/
|
||||
struct _GstRegistry {
|
||||
GstObject object;
|
||||
GstObject object;
|
||||
|
||||
/*< private >*/
|
||||
GList *plugins;
|
||||
GList *features;
|
||||
|
||||
GList *paths;
|
||||
GList *paths;
|
||||
|
||||
/* FIXME move these elsewhere */
|
||||
int cache_file;
|
||||
|
@ -70,11 +70,11 @@ struct _GstRegistry {
|
|||
};
|
||||
|
||||
struct _GstRegistryClass {
|
||||
GstObjectClass parent_class;
|
||||
GstObjectClass parent_class;
|
||||
|
||||
/* signals */
|
||||
void (*plugin_added) (GstRegistry *registry, GstPlugin *plugin);
|
||||
void (*feature_added) (GstRegistry *registry, GstPluginFeature *feature);
|
||||
void (*plugin_added) (GstRegistry *registry, GstPlugin *plugin);
|
||||
void (*feature_added) (GstRegistry *registry, GstPluginFeature *feature);
|
||||
|
||||
/*< private >*/
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
|
@ -82,38 +82,38 @@ struct _GstRegistryClass {
|
|||
|
||||
|
||||
/* normal GObject stuff */
|
||||
GType gst_registry_get_type (void);
|
||||
GType gst_registry_get_type (void);
|
||||
|
||||
GstRegistry * gst_registry_get_default (void);
|
||||
|
||||
gboolean gst_registry_scan_path (GstRegistry *registry, const gchar *path);
|
||||
gboolean gst_registry_scan_path (GstRegistry *registry, const gchar *path);
|
||||
void gst_registry_add_path (GstRegistry * registry, const gchar * path);
|
||||
GList* gst_registry_get_path_list (GstRegistry *registry);
|
||||
GList* gst_registry_get_path_list (GstRegistry *registry);
|
||||
|
||||
gboolean gst_registry_add_plugin (GstRegistry *registry, GstPlugin *plugin);
|
||||
void gst_registry_remove_plugin (GstRegistry *registry, GstPlugin *plugin);
|
||||
gboolean gst_registry_add_plugin (GstRegistry *registry, GstPlugin *plugin);
|
||||
void gst_registry_remove_plugin (GstRegistry *registry, GstPlugin *plugin);
|
||||
gboolean gst_registry_add_feature (GstRegistry * registry, GstPluginFeature * feature);
|
||||
void gst_registry_remove_feature (GstRegistry * registry, GstPluginFeature * feature);
|
||||
|
||||
GList* gst_registry_get_plugin_list (GstRegistry *registry);
|
||||
GList* gst_registry_plugin_filter (GstRegistry *registry,
|
||||
GstPluginFilter filter,
|
||||
gboolean first,
|
||||
gpointer user_data);
|
||||
GList* gst_registry_feature_filter (GstRegistry *registry,
|
||||
GstPluginFeatureFilter filter,
|
||||
gboolean first,
|
||||
gpointer user_data);
|
||||
GList* gst_registry_plugin_filter (GstRegistry *registry,
|
||||
GstPluginFilter filter,
|
||||
gboolean first,
|
||||
gpointer user_data);
|
||||
GList* gst_registry_feature_filter (GstRegistry *registry,
|
||||
GstPluginFeatureFilter filter,
|
||||
gboolean first,
|
||||
gpointer user_data);
|
||||
GList * gst_registry_get_feature_list (GstRegistry *registry,
|
||||
GType type);
|
||||
GList * gst_registry_get_feature_list_by_plugin (GstRegistry *registry, const gchar *name);
|
||||
guint32 gst_registry_get_feature_list_cookie (GstRegistry *registry);
|
||||
|
||||
GstPlugin* gst_registry_find_plugin (GstRegistry *registry, const gchar *name);
|
||||
GstPluginFeature* gst_registry_find_feature (GstRegistry *registry, const gchar *name, GType type);
|
||||
GstPlugin* gst_registry_find_plugin (GstRegistry *registry, const gchar *name);
|
||||
GstPluginFeature* gst_registry_find_feature (GstRegistry *registry, const gchar *name, GType type);
|
||||
|
||||
GstPlugin * gst_registry_lookup (GstRegistry *registry, const char *filename);
|
||||
GstPluginFeature * gst_registry_lookup_feature (GstRegistry *registry, const char *name);
|
||||
GstPlugin * gst_registry_lookup (GstRegistry *registry, const char *filename);
|
||||
GstPluginFeature * gst_registry_lookup_feature (GstRegistry *registry, const char *name);
|
||||
|
||||
/* convinience defines for the default registry */
|
||||
|
||||
|
@ -150,7 +150,7 @@ GstPluginFeature * gst_registry_lookup_feature (GstRegistry *registry, const c
|
|||
*/
|
||||
#define gst_default_registry_get_path_list() \
|
||||
gst_registry_get_path_list (gst_registry_get_default())
|
||||
|
||||
|
||||
/**
|
||||
* gst_default_registry_get_plugin_list:
|
||||
*
|
||||
|
|
|
@ -26,18 +26,18 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_TAG_SETTER (gst_tag_setter_get_type ())
|
||||
#define GST_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_SETTER, GstTagSetter))
|
||||
#define GST_IS_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_SETTER))
|
||||
#define GST_TAG_SETTER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_TAG_SETTER, GstTagSetterInterface))
|
||||
#define GST_TYPE_TAG_SETTER (gst_tag_setter_get_type ())
|
||||
#define GST_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_SETTER, GstTagSetter))
|
||||
#define GST_IS_TAG_SETTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_SETTER))
|
||||
#define GST_TAG_SETTER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GST_TYPE_TAG_SETTER, GstTagSetterInterface))
|
||||
|
||||
/**
|
||||
* GstTagSetter:
|
||||
*
|
||||
* Opaque #GstTagSetter data structure.
|
||||
*/
|
||||
typedef struct _GstTagSetter GstTagSetter; /* Dummy typedef */
|
||||
typedef struct _GstTagSetterInterface GstTagSetterInterface;
|
||||
typedef struct _GstTagSetter GstTagSetter; /* Dummy typedef */
|
||||
typedef struct _GstTagSetterInterface GstTagSetterInterface;
|
||||
|
||||
/**
|
||||
* GstTagSetterInterface:
|
||||
|
@ -56,44 +56,44 @@ struct _GstTagSetterInterface
|
|||
/* virtual table */
|
||||
};
|
||||
|
||||
GType gst_tag_setter_get_type (void);
|
||||
GType gst_tag_setter_get_type (void);
|
||||
|
||||
void gst_tag_setter_reset_tags (GstTagSetter * setter);
|
||||
void gst_tag_setter_reset_tags (GstTagSetter * setter);
|
||||
|
||||
void gst_tag_setter_merge_tags (GstTagSetter * setter,
|
||||
const GstTagList * list,
|
||||
GstTagMergeMode mode);
|
||||
void gst_tag_setter_add_tags (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
void gst_tag_setter_merge_tags (GstTagSetter * setter,
|
||||
const GstTagList * list,
|
||||
GstTagMergeMode mode);
|
||||
void gst_tag_setter_add_tags (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
void gst_tag_setter_add_tag_values (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
void gst_tag_setter_add_tag_values (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
void gst_tag_setter_add_tag_valist (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
va_list var_args);
|
||||
void gst_tag_setter_add_tag_valist (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
va_list var_args);
|
||||
|
||||
void gst_tag_setter_add_tag_valist_values(GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
va_list var_args);
|
||||
void gst_tag_setter_add_tag_valist_values(GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
va_list var_args);
|
||||
|
||||
void gst_tag_setter_add_tag_value (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
const GValue * value);
|
||||
void gst_tag_setter_add_tag_value (GstTagSetter * setter,
|
||||
GstTagMergeMode mode,
|
||||
const gchar * tag,
|
||||
const GValue * value);
|
||||
|
||||
const GstTagList *
|
||||
gst_tag_setter_get_tag_list (GstTagSetter * setter);
|
||||
gst_tag_setter_get_tag_list (GstTagSetter * setter);
|
||||
|
||||
void gst_tag_setter_set_tag_merge_mode (GstTagSetter * setter,
|
||||
GstTagMergeMode mode);
|
||||
GstTagMergeMode gst_tag_setter_get_tag_merge_mode (GstTagSetter * setter);
|
||||
void gst_tag_setter_set_tag_merge_mode (GstTagSetter * setter,
|
||||
GstTagMergeMode mode);
|
||||
GstTagMergeMode gst_tag_setter_get_tag_merge_mode (GstTagSetter * setter);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
|
@ -116,7 +116,7 @@ typedef enum {
|
|||
* @leave_thread: a thread is exiting, this is called when the thread is about
|
||||
* to leave its function
|
||||
*
|
||||
* Custom GstTask thread callback functions that can be installed.
|
||||
* Custom GstTask thread callback functions that can be installed.
|
||||
*
|
||||
* Since: 0.10.24
|
||||
*/
|
||||
|
|
|
@ -92,7 +92,7 @@ GType gst_task_pool_get_type (void);
|
|||
GstTaskPool * gst_task_pool_new (void);
|
||||
void gst_task_pool_prepare (GstTaskPool *pool, GError **error);
|
||||
|
||||
gpointer gst_task_pool_push (GstTaskPool *pool, GstTaskPoolFunction func,
|
||||
gpointer gst_task_pool_push (GstTaskPool *pool, GstTaskPoolFunction func,
|
||||
gpointer user_data, GError **error);
|
||||
void gst_task_pool_join (GstTaskPool *pool, gpointer id);
|
||||
|
||||
|
|
140
gst/gsttrace.h
140
gst/gsttrace.h
|
@ -39,10 +39,10 @@ G_BEGIN_DECLS
|
|||
typedef enum {
|
||||
GST_ALLOC_TRACE_NONE = 0,
|
||||
GST_ALLOC_TRACE_LIVE = (1 << 0),
|
||||
GST_ALLOC_TRACE_MEM_LIVE = (1 << 1)
|
||||
GST_ALLOC_TRACE_MEM_LIVE = (1 << 1)
|
||||
} GstAllocTraceFlags;
|
||||
|
||||
typedef struct _GstAllocTrace GstAllocTrace;
|
||||
typedef struct _GstAllocTrace GstAllocTrace;
|
||||
|
||||
/**
|
||||
* GstAllocTrace:
|
||||
|
@ -54,17 +54,17 @@ typedef struct _GstAllocTrace GstAllocTrace;
|
|||
* The main tracing object
|
||||
*/
|
||||
struct _GstAllocTrace {
|
||||
gchar *name;
|
||||
gint flags;
|
||||
gchar *name;
|
||||
gint flags;
|
||||
|
||||
gint live;
|
||||
GSList *mem_live;
|
||||
gint live;
|
||||
GSList *mem_live;
|
||||
};
|
||||
|
||||
#ifndef GST_DISABLE_TRACE
|
||||
|
||||
typedef struct _GstTrace GstTrace;
|
||||
typedef struct _GstTraceEntry GstTraceEntry;
|
||||
typedef struct _GstTrace GstTrace;
|
||||
typedef struct _GstTraceEntry GstTraceEntry;
|
||||
|
||||
/**
|
||||
* GstTrace:
|
||||
|
@ -90,54 +90,54 @@ struct _GstTraceEntry {
|
|||
gchar message[112];
|
||||
};
|
||||
|
||||
GstTrace* gst_trace_new (const gchar *filename, gint size);
|
||||
GstTrace* gst_trace_new (const gchar *filename, gint size);
|
||||
|
||||
void gst_trace_destroy (GstTrace *trace);
|
||||
void gst_trace_flush (GstTrace *trace);
|
||||
void gst_trace_text_flush (GstTrace *trace);
|
||||
void gst_trace_destroy (GstTrace *trace);
|
||||
void gst_trace_flush (GstTrace *trace);
|
||||
void gst_trace_text_flush (GstTrace *trace);
|
||||
/**
|
||||
* gst_trace_get_size:
|
||||
* @trace: a #GstTrace
|
||||
*
|
||||
* Retrieve the buffer size of @trace.
|
||||
*/
|
||||
#define gst_trace_get_size(trace) ((trace)->bufsize)
|
||||
#define gst_trace_get_size(trace) ((trace)->bufsize)
|
||||
/**
|
||||
* gst_trace_get_offset:
|
||||
* @trace: a #GstTrace
|
||||
*
|
||||
* Retrieve the current buffer offset of @trace.
|
||||
*/
|
||||
#define gst_trace_get_offset(trace) ((trace)->bufoffset)
|
||||
#define gst_trace_get_offset(trace) ((trace)->bufoffset)
|
||||
/**
|
||||
* gst_trace_get_remaining:
|
||||
* @trace: a #GstTrace
|
||||
*
|
||||
* Retrieve the remaining size in the @trace buffer.
|
||||
*/
|
||||
#define gst_trace_get_remaining(trace) ((trace)->bufsize - (trace)->bufoffset)
|
||||
void gst_trace_set_default (GstTrace *trace);
|
||||
#define gst_trace_get_remaining(trace) ((trace)->bufsize - (trace)->bufoffset)
|
||||
void gst_trace_set_default (GstTrace *trace);
|
||||
|
||||
void _gst_trace_add_entry (GstTrace *trace, guint32 seq,
|
||||
guint32 data, gchar *msg);
|
||||
void _gst_trace_add_entry (GstTrace *trace, guint32 seq,
|
||||
guint32 data, gchar *msg);
|
||||
|
||||
void gst_trace_read_tsc (gint64 *dst);
|
||||
void gst_trace_read_tsc (gint64 *dst);
|
||||
|
||||
|
||||
extern GStaticMutex _gst_trace_mutex;
|
||||
|
||||
gboolean gst_alloc_trace_available (void);
|
||||
const GList* gst_alloc_trace_list (void);
|
||||
GstAllocTrace* _gst_alloc_trace_register (const gchar *name);
|
||||
gboolean gst_alloc_trace_available (void);
|
||||
const GList* gst_alloc_trace_list (void);
|
||||
GstAllocTrace* _gst_alloc_trace_register (const gchar *name);
|
||||
|
||||
int gst_alloc_trace_live_all (void);
|
||||
void gst_alloc_trace_print_all (void);
|
||||
void gst_alloc_trace_print_live (void);
|
||||
void gst_alloc_trace_set_flags_all (GstAllocTraceFlags flags);
|
||||
int gst_alloc_trace_live_all (void);
|
||||
void gst_alloc_trace_print_all (void);
|
||||
void gst_alloc_trace_print_live (void);
|
||||
void gst_alloc_trace_set_flags_all (GstAllocTraceFlags flags);
|
||||
|
||||
GstAllocTrace* gst_alloc_trace_get (const gchar *name);
|
||||
void gst_alloc_trace_print (const GstAllocTrace *trace);
|
||||
void gst_alloc_trace_set_flags (GstAllocTrace *trace, GstAllocTraceFlags flags);
|
||||
GstAllocTrace* gst_alloc_trace_get (const gchar *name);
|
||||
void gst_alloc_trace_print (const GstAllocTrace *trace);
|
||||
void gst_alloc_trace_set_flags (GstAllocTrace *trace, GstAllocTraceFlags flags);
|
||||
|
||||
|
||||
#ifndef GST_DISABLE_ALLOC_TRACE
|
||||
|
@ -147,7 +147,7 @@ void gst_alloc_trace_set_flags (GstAllocTrace *trace, GstAllocTraceFlags flags
|
|||
*
|
||||
* Register a new alloc tracer with the given name
|
||||
*/
|
||||
#define gst_alloc_trace_register(name) _gst_alloc_trace_register (name);
|
||||
#define gst_alloc_trace_register(name) _gst_alloc_trace_register (name);
|
||||
|
||||
/**
|
||||
* gst_alloc_trace_new:
|
||||
|
@ -156,15 +156,15 @@ void gst_alloc_trace_set_flags (GstAllocTrace *trace, GstAllocTraceFlags flags
|
|||
*
|
||||
* Use the tracer to trace a new memory allocation
|
||||
*/
|
||||
#define gst_alloc_trace_new(trace, mem) \
|
||||
G_STMT_START { \
|
||||
#define gst_alloc_trace_new(trace, mem) \
|
||||
G_STMT_START { \
|
||||
if (G_UNLIKELY ((trace)->flags)) { \
|
||||
g_static_mutex_lock (&_gst_trace_mutex); \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \
|
||||
(trace)->live++; \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \
|
||||
(trace)->mem_live = \
|
||||
g_slist_prepend ((trace)->mem_live, mem); \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \
|
||||
(trace)->live++; \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \
|
||||
(trace)->mem_live = \
|
||||
g_slist_prepend ((trace)->mem_live, mem); \
|
||||
g_static_mutex_unlock (&_gst_trace_mutex); \
|
||||
} \
|
||||
} G_STMT_END
|
||||
|
@ -176,23 +176,23 @@ G_STMT_START { \
|
|||
*
|
||||
* Trace a memory free operation
|
||||
*/
|
||||
#define gst_alloc_trace_free(trace, mem) \
|
||||
G_STMT_START { \
|
||||
#define gst_alloc_trace_free(trace, mem) \
|
||||
G_STMT_START { \
|
||||
if (G_UNLIKELY ((trace)->flags)) { \
|
||||
g_static_mutex_lock (&_gst_trace_mutex); \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \
|
||||
(trace)->live--; \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \
|
||||
(trace)->mem_live = \
|
||||
g_slist_remove ((trace)->mem_live, mem); \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \
|
||||
(trace)->live--; \
|
||||
if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \
|
||||
(trace)->mem_live = \
|
||||
g_slist_remove ((trace)->mem_live, mem); \
|
||||
g_static_mutex_unlock (&_gst_trace_mutex); \
|
||||
} \
|
||||
} G_STMT_END
|
||||
|
||||
#else
|
||||
#define gst_alloc_trace_register(name) (NULL)
|
||||
#define gst_alloc_trace_new(trace, mem)
|
||||
#define gst_alloc_trace_free(trace, mem)
|
||||
#define gst_alloc_trace_register(name) (NULL)
|
||||
#define gst_alloc_trace_new(trace, mem)
|
||||
#define gst_alloc_trace_free(trace, mem)
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -215,34 +215,34 @@ extern gint _gst_trace_on;
|
|||
#else /* GST_DISABLE_TRACE */
|
||||
|
||||
#if defined __GNUC__ && __GNUC__ >= 3
|
||||
#pragma GCC poison gst_trace_new
|
||||
#pragma GCC poison gst_trace_destroy
|
||||
#pragma GCC poison gst_trace_flush
|
||||
#pragma GCC poison gst_trace_text_flush
|
||||
#pragma GCC poison gst_trace_get_size
|
||||
#pragma GCC poison gst_trace_get_offset
|
||||
#pragma GCC poison gst_trace_get_remaining
|
||||
#pragma GCC poison gst_trace_set_default
|
||||
#pragma GCC poison _gst_trace_add_entry
|
||||
#pragma GCC poison gst_trace_read_tsc
|
||||
#pragma GCC poison gst_trace_new
|
||||
#pragma GCC poison gst_trace_destroy
|
||||
#pragma GCC poison gst_trace_flush
|
||||
#pragma GCC poison gst_trace_text_flush
|
||||
#pragma GCC poison gst_trace_get_size
|
||||
#pragma GCC poison gst_trace_get_offset
|
||||
#pragma GCC poison gst_trace_get_remaining
|
||||
#pragma GCC poison gst_trace_set_default
|
||||
#pragma GCC poison _gst_trace_add_entry
|
||||
#pragma GCC poison gst_trace_read_tsc
|
||||
#endif
|
||||
|
||||
#define gst_alloc_trace_register(name) (NULL)
|
||||
#define gst_alloc_trace_new(trace, mem)
|
||||
#define gst_alloc_trace_free(trace, mem)
|
||||
#define gst_alloc_trace_register(name) (NULL)
|
||||
#define gst_alloc_trace_new(trace, mem)
|
||||
#define gst_alloc_trace_free(trace, mem)
|
||||
|
||||
#define gst_alloc_trace_available() (FALSE)
|
||||
#define gst_alloc_trace_list() (NULL)
|
||||
#define _gst_alloc_trace_register(name) (NULL)
|
||||
#define gst_alloc_trace_available() (FALSE)
|
||||
#define gst_alloc_trace_list() (NULL)
|
||||
#define _gst_alloc_trace_register(name) (NULL)
|
||||
|
||||
#define gst_alloc_trace_live_all() (0)
|
||||
#define gst_alloc_trace_print_all()
|
||||
#define gst_alloc_trace_print_live()
|
||||
#define gst_alloc_trace_set_flags_all(flags)
|
||||
#define gst_alloc_trace_live_all() (0)
|
||||
#define gst_alloc_trace_print_all()
|
||||
#define gst_alloc_trace_print_live()
|
||||
#define gst_alloc_trace_set_flags_all(flags)
|
||||
|
||||
#define gst_alloc_trace_get(name) (NULL)
|
||||
#define gst_alloc_trace_print(trace)
|
||||
#define gst_alloc_trace_set_flags(trace,flags)
|
||||
#define gst_alloc_trace_get(name) (NULL)
|
||||
#define gst_alloc_trace_print(trace)
|
||||
#define gst_alloc_trace_set_flags(trace,flags)
|
||||
|
||||
#define gst_trace_add_entry(trace,seq,data,msg)
|
||||
|
||||
|
|
|
@ -45,21 +45,21 @@ typedef struct _GstTypeFindFactoryClass GstTypeFindFactoryClass;
|
|||
* Object that stores information about a typefind function.
|
||||
*/
|
||||
struct _GstTypeFindFactory {
|
||||
GstPluginFeature feature;
|
||||
GstPluginFeature feature;
|
||||
/* <private> */
|
||||
|
||||
GstTypeFindFunction function;
|
||||
gchar ** extensions;
|
||||
GstCaps * caps; /* FIXME: not yet saved in registry */
|
||||
GstTypeFindFunction function;
|
||||
gchar ** extensions;
|
||||
GstCaps * caps; /* FIXME: not yet saved in registry */
|
||||
|
||||
gpointer user_data;
|
||||
GDestroyNotify user_data_notify;
|
||||
gpointer user_data;
|
||||
GDestroyNotify user_data_notify;
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
};
|
||||
|
||||
struct _GstTypeFindFactoryClass {
|
||||
GstPluginFeatureClass parent;
|
||||
GstPluginFeatureClass parent;
|
||||
/* <private> */
|
||||
|
||||
gpointer _gst_reserved[GST_PADDING];
|
||||
|
@ -67,14 +67,14 @@ struct _GstTypeFindFactoryClass {
|
|||
|
||||
/* typefinding interface */
|
||||
|
||||
GType gst_type_find_factory_get_type (void);
|
||||
GType gst_type_find_factory_get_type (void);
|
||||
|
||||
GList * gst_type_find_factory_get_list (void);
|
||||
GList * gst_type_find_factory_get_list (void);
|
||||
|
||||
gchar ** gst_type_find_factory_get_extensions (GstTypeFindFactory *factory);
|
||||
GstCaps * gst_type_find_factory_get_caps (GstTypeFindFactory *factory);
|
||||
void gst_type_find_factory_call_function (GstTypeFindFactory *factory,
|
||||
GstTypeFind *find);
|
||||
gchar ** gst_type_find_factory_get_extensions (GstTypeFindFactory *factory);
|
||||
GstCaps * gst_type_find_factory_get_caps (GstTypeFindFactory *factory);
|
||||
void gst_type_find_factory_call_function (GstTypeFindFactory *factory,
|
||||
GstTypeFind *find);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
|
|
279
gst/gstutils.h
279
gst/gstutils.h
|
@ -31,9 +31,9 @@
|
|||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
void gst_util_set_value_from_string (GValue *value, const gchar *value_str);
|
||||
void gst_util_set_object_arg (GObject *object, const gchar *name, const gchar *value);
|
||||
void gst_util_dump_mem (const guchar *mem, guint size);
|
||||
void gst_util_set_value_from_string (GValue *value, const gchar *value_str);
|
||||
void gst_util_set_object_arg (GObject *object, const gchar *name, const gchar *value);
|
||||
void gst_util_dump_mem (const guchar *mem, guint size);
|
||||
|
||||
guint64 gst_util_gdouble_to_guint64 (gdouble value) G_GNUC_CONST;
|
||||
gdouble gst_util_guint64_to_gdouble (guint64 value) G_GNUC_CONST;
|
||||
|
@ -63,9 +63,9 @@ gdouble gst_util_guint64_to_gdouble (guint64 value) G_GNUC_CONST;
|
|||
#define gst_guint64_to_gdouble(value) ((gdouble) (value))
|
||||
#endif
|
||||
|
||||
guint64 gst_util_uint64_scale (guint64 val, guint64 num, guint64 denom);
|
||||
guint64 gst_util_uint64_scale_round (guint64 val, guint64 num, guint64 denom);
|
||||
guint64 gst_util_uint64_scale_ceil (guint64 val, guint64 num, guint64 denom);
|
||||
guint64 gst_util_uint64_scale (guint64 val, guint64 num, guint64 denom);
|
||||
guint64 gst_util_uint64_scale_round (guint64 val, guint64 num, guint64 denom);
|
||||
guint64 gst_util_uint64_scale_ceil (guint64 val, guint64 num, guint64 denom);
|
||||
|
||||
guint64 gst_util_uint64_scale_int (guint64 val, gint num, gint denom);
|
||||
guint64 gst_util_uint64_scale_int_round (guint64 val, gint num, gint denom);
|
||||
|
@ -74,8 +74,8 @@ guint64 gst_util_uint64_scale_int_ceil (guint64 val, gint num, gint den
|
|||
guint32 gst_util_seqnum_next (void);
|
||||
gint32 gst_util_seqnum_compare (guint32 s1, guint32 s2);
|
||||
|
||||
void gst_print_pad_caps (GString *buf, gint indent, GstPad *pad);
|
||||
void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
||||
void gst_print_pad_caps (GString *buf, gint indent, GstPad *pad);
|
||||
void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
||||
|
||||
|
||||
/**
|
||||
|
@ -89,9 +89,9 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
* this macro is not to be used with things that return something, use
|
||||
* the _WITH_DEFAULT version for that
|
||||
*/
|
||||
#define GST_CALL_PARENT(parent_class_cast, name, args) \
|
||||
((parent_class_cast(parent_class)->name != NULL) ? \
|
||||
parent_class_cast(parent_class)->name args : (void) 0)
|
||||
#define GST_CALL_PARENT(parent_class_cast, name, args) \
|
||||
((parent_class_cast(parent_class)->name != NULL) ? \
|
||||
parent_class_cast(parent_class)->name args : (void) 0)
|
||||
|
||||
/**
|
||||
* GST_CALL_PARENT_WITH_DEFAULT:
|
||||
|
@ -104,8 +104,8 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
* evaluates to @def_return.
|
||||
*/
|
||||
#define GST_CALL_PARENT_WITH_DEFAULT(parent_class_cast, name, args, def_return)\
|
||||
((parent_class_cast(parent_class)->name != NULL) ? \
|
||||
parent_class_cast(parent_class)->name args : def_return)
|
||||
((parent_class_cast(parent_class)->name != NULL) ? \
|
||||
parent_class_cast(parent_class)->name args : def_return)
|
||||
|
||||
/* Define PUT and GET functions for unaligned memory */
|
||||
#define _GST_GET(__data, __idx, __size, __shift) \
|
||||
|
@ -120,14 +120,14 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 64 bit unsigned integer value in big endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT64_BE(data) (_GST_GET (data, 0, 64, 56) | \
|
||||
_GST_GET (data, 1, 64, 48) | \
|
||||
_GST_GET (data, 2, 64, 40) | \
|
||||
_GST_GET (data, 3, 64, 32) | \
|
||||
_GST_GET (data, 4, 64, 24) | \
|
||||
_GST_GET (data, 5, 64, 16) | \
|
||||
_GST_GET (data, 6, 64, 8) | \
|
||||
_GST_GET (data, 7, 64, 0))
|
||||
#define GST_READ_UINT64_BE(data) (_GST_GET (data, 0, 64, 56) | \
|
||||
_GST_GET (data, 1, 64, 48) | \
|
||||
_GST_GET (data, 2, 64, 40) | \
|
||||
_GST_GET (data, 3, 64, 32) | \
|
||||
_GST_GET (data, 4, 64, 24) | \
|
||||
_GST_GET (data, 5, 64, 16) | \
|
||||
_GST_GET (data, 6, 64, 8) | \
|
||||
_GST_GET (data, 7, 64, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT64_LE:
|
||||
|
@ -135,14 +135,14 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 64 bit unsigned integer value in little endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT64_LE(data) (_GST_GET (data, 7, 64, 56) | \
|
||||
_GST_GET (data, 6, 64, 48) | \
|
||||
_GST_GET (data, 5, 64, 40) | \
|
||||
_GST_GET (data, 4, 64, 32) | \
|
||||
_GST_GET (data, 3, 64, 24) | \
|
||||
_GST_GET (data, 2, 64, 16) | \
|
||||
_GST_GET (data, 1, 64, 8) | \
|
||||
_GST_GET (data, 0, 64, 0))
|
||||
#define GST_READ_UINT64_LE(data) (_GST_GET (data, 7, 64, 56) | \
|
||||
_GST_GET (data, 6, 64, 48) | \
|
||||
_GST_GET (data, 5, 64, 40) | \
|
||||
_GST_GET (data, 4, 64, 32) | \
|
||||
_GST_GET (data, 3, 64, 24) | \
|
||||
_GST_GET (data, 2, 64, 16) | \
|
||||
_GST_GET (data, 1, 64, 8) | \
|
||||
_GST_GET (data, 0, 64, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT32_BE:
|
||||
|
@ -150,10 +150,10 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 32 bit unsigned integer value in big endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT32_BE(data) (_GST_GET (data, 0, 32, 24) | \
|
||||
_GST_GET (data, 1, 32, 16) | \
|
||||
_GST_GET (data, 2, 32, 8) | \
|
||||
_GST_GET (data, 3, 32, 0))
|
||||
#define GST_READ_UINT32_BE(data) (_GST_GET (data, 0, 32, 24) | \
|
||||
_GST_GET (data, 1, 32, 16) | \
|
||||
_GST_GET (data, 2, 32, 8) | \
|
||||
_GST_GET (data, 3, 32, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT32_LE:
|
||||
|
@ -161,10 +161,10 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 32 bit unsigned integer value in little endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT32_LE(data) (_GST_GET (data, 3, 32, 24) | \
|
||||
_GST_GET (data, 2, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 0, 32, 0))
|
||||
#define GST_READ_UINT32_LE(data) (_GST_GET (data, 3, 32, 24) | \
|
||||
_GST_GET (data, 2, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 0, 32, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT24_BE:
|
||||
|
@ -174,9 +174,9 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
#define GST_READ_UINT24_BE(data) (_GST_GET (data, 0, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 2, 32, 0))
|
||||
#define GST_READ_UINT24_BE(data) (_GST_GET (data, 0, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 2, 32, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT24_LE:
|
||||
|
@ -186,9 +186,9 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
#define GST_READ_UINT24_LE(data) (_GST_GET (data, 2, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 0, 32, 0))
|
||||
#define GST_READ_UINT24_LE(data) (_GST_GET (data, 2, 32, 16) | \
|
||||
_GST_GET (data, 1, 32, 8) | \
|
||||
_GST_GET (data, 0, 32, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT16_BE:
|
||||
|
@ -196,8 +196,8 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 16 bit unsigned integer value in big endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT16_BE(data) (_GST_GET (data, 0, 16, 8) | \
|
||||
_GST_GET (data, 1, 16, 0))
|
||||
#define GST_READ_UINT16_BE(data) (_GST_GET (data, 0, 16, 8) | \
|
||||
_GST_GET (data, 1, 16, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT16_LE:
|
||||
|
@ -205,8 +205,8 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read a 16 bit unsigned integer value in little endian format from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT16_LE(data) (_GST_GET (data, 1, 16, 8) | \
|
||||
_GST_GET (data, 0, 16, 0))
|
||||
#define GST_READ_UINT16_LE(data) (_GST_GET (data, 1, 16, 8) | \
|
||||
_GST_GET (data, 0, 16, 0))
|
||||
|
||||
/**
|
||||
* GST_READ_UINT8:
|
||||
|
@ -214,7 +214,7 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Read an 8 bit unsigned integer value from the memory buffer.
|
||||
*/
|
||||
#define GST_READ_UINT8(data) (_GST_GET (data, 0, 8, 0))
|
||||
#define GST_READ_UINT8(data) (_GST_GET (data, 0, 8, 0))
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT64_BE:
|
||||
|
@ -223,16 +223,16 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 64 bit unsigned integer value in big endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT64_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 64, 56, num); \
|
||||
_GST_PUT (data, 1, 64, 48, num); \
|
||||
_GST_PUT (data, 2, 64, 40, num); \
|
||||
_GST_PUT (data, 3, 64, 32, num); \
|
||||
_GST_PUT (data, 4, 64, 24, num); \
|
||||
_GST_PUT (data, 5, 64, 16, num); \
|
||||
_GST_PUT (data, 6, 64, 8, num); \
|
||||
_GST_PUT (data, 7, 64, 0, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT64_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 64, 56, num); \
|
||||
_GST_PUT (data, 1, 64, 48, num); \
|
||||
_GST_PUT (data, 2, 64, 40, num); \
|
||||
_GST_PUT (data, 3, 64, 32, num); \
|
||||
_GST_PUT (data, 4, 64, 24, num); \
|
||||
_GST_PUT (data, 5, 64, 16, num); \
|
||||
_GST_PUT (data, 6, 64, 8, num); \
|
||||
_GST_PUT (data, 7, 64, 0, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT64_LE:
|
||||
|
@ -241,16 +241,16 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 64 bit unsigned integer value in little endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT64_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 64, 0, num); \
|
||||
_GST_PUT (data, 1, 64, 8, num); \
|
||||
_GST_PUT (data, 2, 64, 16, num); \
|
||||
_GST_PUT (data, 3, 64, 24, num); \
|
||||
_GST_PUT (data, 4, 64, 32, num); \
|
||||
_GST_PUT (data, 5, 64, 40, num); \
|
||||
_GST_PUT (data, 6, 64, 48, num); \
|
||||
_GST_PUT (data, 7, 64, 56, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT64_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 64, 0, num); \
|
||||
_GST_PUT (data, 1, 64, 8, num); \
|
||||
_GST_PUT (data, 2, 64, 16, num); \
|
||||
_GST_PUT (data, 3, 64, 24, num); \
|
||||
_GST_PUT (data, 4, 64, 32, num); \
|
||||
_GST_PUT (data, 5, 64, 40, num); \
|
||||
_GST_PUT (data, 6, 64, 48, num); \
|
||||
_GST_PUT (data, 7, 64, 56, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT32_BE:
|
||||
|
@ -259,12 +259,12 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 32 bit unsigned integer value in big endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT32_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 24, num); \
|
||||
_GST_PUT (data, 1, 32, 16, num); \
|
||||
_GST_PUT (data, 2, 32, 8, num); \
|
||||
_GST_PUT (data, 3, 32, 0, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT32_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 24, num); \
|
||||
_GST_PUT (data, 1, 32, 16, num); \
|
||||
_GST_PUT (data, 2, 32, 8, num); \
|
||||
_GST_PUT (data, 3, 32, 0, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT32_LE:
|
||||
|
@ -273,12 +273,12 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 32 bit unsigned integer value in little endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT32_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 0, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 16, num); \
|
||||
_GST_PUT (data, 3, 32, 24, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT32_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 0, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 16, num); \
|
||||
_GST_PUT (data, 3, 32, 24, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT24_BE:
|
||||
|
@ -289,11 +289,11 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
#define GST_WRITE_UINT24_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 16, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 0, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT24_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 16, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 0, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT24_LE:
|
||||
|
@ -304,11 +304,11 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
#define GST_WRITE_UINT24_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 0, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 16, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT24_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 32, 0, num); \
|
||||
_GST_PUT (data, 1, 32, 8, num); \
|
||||
_GST_PUT (data, 2, 32, 16, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT16_BE:
|
||||
|
@ -317,10 +317,10 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 16 bit unsigned integer value in big endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT16_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 16, 8, num); \
|
||||
_GST_PUT (data, 1, 16, 0, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT16_BE(data, num) do { \
|
||||
_GST_PUT (data, 0, 16, 8, num); \
|
||||
_GST_PUT (data, 1, 16, 0, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT16_LE:
|
||||
|
@ -329,10 +329,10 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store a 16 bit unsigned integer value in little endian format into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT16_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 16, 0, num); \
|
||||
_GST_PUT (data, 1, 16, 8, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT16_LE(data, num) do { \
|
||||
_GST_PUT (data, 0, 16, 0, num); \
|
||||
_GST_PUT (data, 1, 16, 8, num); \
|
||||
} while (0)
|
||||
|
||||
/**
|
||||
* GST_WRITE_UINT8:
|
||||
|
@ -341,9 +341,9 @@ void gst_print_element_args (GString *buf, gint indent, GstElement *element);
|
|||
*
|
||||
* Store an 8 bit unsigned integer value into the memory buffer.
|
||||
*/
|
||||
#define GST_WRITE_UINT8(data, num) do { \
|
||||
_GST_PUT (data, 0, 8, 0, num); \
|
||||
} while (0)
|
||||
#define GST_WRITE_UINT8(data, num) do { \
|
||||
_GST_PUT (data, 0, 8, 0, num); \
|
||||
} while (0)
|
||||
|
||||
/* Float endianness conversion macros */
|
||||
|
||||
|
@ -832,39 +832,39 @@ GST_WRITE_DOUBLE_BE(guint8 *data, gdouble num)
|
|||
*/
|
||||
#define GST_ROUND_DOWN_64(num) ((num)&(~63))
|
||||
|
||||
void gst_object_default_error (GstObject * source,
|
||||
const GError * error,
|
||||
const gchar * debug);
|
||||
void gst_object_default_error (GstObject * source,
|
||||
const GError * error,
|
||||
const gchar * debug);
|
||||
|
||||
/* element functions */
|
||||
void gst_element_create_all_pads (GstElement *element);
|
||||
GstPad* gst_element_get_compatible_pad (GstElement *element, GstPad *pad,
|
||||
const GstCaps *caps);
|
||||
const GstCaps *caps);
|
||||
|
||||
GstPadTemplate* gst_element_get_compatible_pad_template (GstElement *element, GstPadTemplate *compattempl);
|
||||
|
||||
const gchar* gst_element_state_get_name (GstState state);
|
||||
const gchar * gst_element_state_change_return_get_name (GstStateChangeReturn state_ret);
|
||||
|
||||
gboolean gst_element_link (GstElement *src, GstElement *dest);
|
||||
gboolean gst_element_link_many (GstElement *element_1,
|
||||
GstElement *element_2, ...) G_GNUC_NULL_TERMINATED;
|
||||
gboolean gst_element_link_filtered (GstElement * src,
|
||||
gboolean gst_element_link (GstElement *src, GstElement *dest);
|
||||
gboolean gst_element_link_many (GstElement *element_1,
|
||||
GstElement *element_2, ...) G_GNUC_NULL_TERMINATED;
|
||||
gboolean gst_element_link_filtered (GstElement * src,
|
||||
GstElement * dest,
|
||||
GstCaps *filter);
|
||||
void gst_element_unlink (GstElement *src, GstElement *dest);
|
||||
void gst_element_unlink_many (GstElement *element_1,
|
||||
GstElement *element_2, ...) G_GNUC_NULL_TERMINATED;
|
||||
GstElement *element_2, ...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
gboolean gst_element_link_pads (GstElement *src, const gchar *srcpadname,
|
||||
GstElement *dest, const gchar *destpadname);
|
||||
gboolean gst_element_link_pads_full (GstElement *src, const gchar *srcpadname,
|
||||
GstElement *dest, const gchar *destpadname,
|
||||
GstPadLinkCheck flags);
|
||||
gboolean gst_element_link_pads (GstElement *src, const gchar *srcpadname,
|
||||
GstElement *dest, const gchar *destpadname);
|
||||
gboolean gst_element_link_pads_full (GstElement *src, const gchar *srcpadname,
|
||||
GstElement *dest, const gchar *destpadname,
|
||||
GstPadLinkCheck flags);
|
||||
void gst_element_unlink_pads (GstElement *src, const gchar *srcpadname,
|
||||
GstElement *dest, const gchar *destpadname);
|
||||
GstElement *dest, const gchar *destpadname);
|
||||
|
||||
gboolean gst_element_link_pads_filtered (GstElement * src, const gchar * srcpadname,
|
||||
gboolean gst_element_link_pads_filtered (GstElement * src, const gchar * srcpadname,
|
||||
GstElement * dest, const gchar * destpadname,
|
||||
GstCaps *filter);
|
||||
|
||||
|
@ -883,28 +883,28 @@ gboolean gst_element_factory_can_src_any_caps (GstElementFactory *factory, cons
|
|||
gboolean gst_element_query_position (GstElement *element, GstFormat format, gint64 *cur);
|
||||
gboolean gst_element_query_duration (GstElement *element, GstFormat format, gint64 *duration);
|
||||
gboolean gst_element_query_convert (GstElement *element, GstFormat src_format, gint64 src_val,
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
|
||||
/* element class functions */
|
||||
void gst_element_class_install_std_props (GstElementClass * klass,
|
||||
const gchar * first_name, ...) G_GNUC_NULL_TERMINATED;
|
||||
void gst_element_class_install_std_props (GstElementClass * klass,
|
||||
const gchar * first_name, ...) G_GNUC_NULL_TERMINATED;
|
||||
|
||||
/* pad functions */
|
||||
void gst_pad_use_fixed_caps (GstPad *pad);
|
||||
GstCaps* gst_pad_proxy_getcaps (GstPad * pad, GstCaps * filter);
|
||||
void gst_pad_use_fixed_caps (GstPad *pad);
|
||||
GstCaps* gst_pad_proxy_getcaps (GstPad * pad, GstCaps * filter);
|
||||
|
||||
GstElement* gst_pad_get_parent_element (GstPad *pad);
|
||||
GstElement* gst_pad_get_parent_element (GstPad *pad);
|
||||
|
||||
/* util query functions */
|
||||
gboolean gst_pad_query_position (GstPad *pad, GstFormat format, gint64 *cur);
|
||||
gboolean gst_pad_query_duration (GstPad *pad, GstFormat format, gint64 *duration);
|
||||
gboolean gst_pad_query_convert (GstPad *pad, GstFormat src_format, gint64 src_val,
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
|
||||
gboolean gst_pad_query_peer_position (GstPad *pad, GstFormat format, gint64 *cur);
|
||||
gboolean gst_pad_query_peer_duration (GstPad *pad, GstFormat format, gint64 *duration);
|
||||
gboolean gst_pad_query_peer_convert (GstPad *pad, GstFormat src_format, gint64 src_val,
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
GstFormat dest_format, gint64 *dest_val);
|
||||
|
||||
/* bin functions */
|
||||
void gst_bin_add_many (GstBin *bin, GstElement *element_1, ...) G_GNUC_NULL_TERMINATED;
|
||||
|
@ -912,8 +912,8 @@ void gst_bin_remove_many (GstBin *bin, GstElement
|
|||
GstPad * gst_bin_find_unlinked_pad (GstBin *bin, GstPadDirection direction);
|
||||
|
||||
/* buffer functions */
|
||||
GstBuffer * gst_buffer_merge (GstBuffer * buf1, GstBuffer * buf2);
|
||||
GstBuffer * gst_buffer_join (GstBuffer * buf1, GstBuffer * buf2);
|
||||
GstBuffer * gst_buffer_merge (GstBuffer * buf1, GstBuffer * buf2);
|
||||
GstBuffer * gst_buffer_join (GstBuffer * buf1, GstBuffer * buf2);
|
||||
|
||||
/* parse utility functions */
|
||||
GstElement * gst_parse_bin_from_description (const gchar * bin_description,
|
||||
|
@ -944,17 +944,22 @@ typedef enum {
|
|||
GST_SEARCH_MODE_AFTER
|
||||
} GstSearchMode;
|
||||
|
||||
gpointer gst_util_array_binary_search (gpointer array, guint num_elements,
|
||||
gsize element_size, GCompareDataFunc search_func,
|
||||
GstSearchMode mode, gconstpointer search_data,
|
||||
gpointer user_data);
|
||||
gpointer gst_util_array_binary_search (gpointer array, guint num_elements,
|
||||
gsize element_size, GCompareDataFunc search_func,
|
||||
GstSearchMode mode, gconstpointer search_data,
|
||||
gpointer user_data);
|
||||
|
||||
gint gst_util_greatest_common_divisor (gint a, gint b);
|
||||
void gst_util_fraction_to_double (gint src_n, gint src_d, gdouble *dest);
|
||||
void gst_util_double_to_fraction (gdouble src, gint *dest_n, gint *dest_d);
|
||||
gboolean gst_util_fraction_multiply (gint a_n, gint a_d, gint b_n, gint b_d, gint *res_n, gint *res_d);
|
||||
gboolean gst_util_fraction_add (gint a_n, gint a_d, gint b_n, gint b_d, gint *res_n, gint *res_d);
|
||||
gint gst_util_fraction_compare (gint a_n, gint a_d, gint b_n, gint b_d);
|
||||
/* fraction operations */
|
||||
gint gst_util_greatest_common_divisor (gint a, gint b);
|
||||
|
||||
void gst_util_fraction_to_double (gint src_n, gint src_d, gdouble *dest);
|
||||
void gst_util_double_to_fraction (gdouble src, gint *dest_n, gint *dest_d);
|
||||
|
||||
gboolean gst_util_fraction_multiply (gint a_n, gint a_d, gint b_n, gint b_d,
|
||||
gint *res_n, gint *res_d);
|
||||
gboolean gst_util_fraction_add (gint a_n, gint a_d, gint b_n, gint b_d,
|
||||
gint *res_n, gint *res_d);
|
||||
gint gst_util_fraction_compare (gint a_n, gint a_d, gint b_n, gint b_d);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
|
|
230
gst/gstvalue.h
230
gst/gstvalue.h
|
@ -125,7 +125,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Checks if the given #GValue contains a #GST_TYPE_LIST value.
|
||||
*/
|
||||
#define GST_VALUE_HOLDS_LIST(x) (G_VALUE_HOLDS((x), gst_value_list_get_type ()))
|
||||
#define GST_VALUE_HOLDS_LIST(x) (G_VALUE_HOLDS((x), gst_value_list_get_type ()))
|
||||
|
||||
/**
|
||||
* GST_VALUE_HOLDS_ARRAY:
|
||||
|
@ -133,7 +133,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Checks if the given #GValue contains a #GST_TYPE_ARRAY value.
|
||||
*/
|
||||
#define GST_VALUE_HOLDS_ARRAY(x) (G_VALUE_HOLDS((x), gst_value_array_get_type ()))
|
||||
#define GST_VALUE_HOLDS_ARRAY(x) (G_VALUE_HOLDS((x), gst_value_array_get_type ()))
|
||||
|
||||
/**
|
||||
* GST_VALUE_HOLDS_CAPS:
|
||||
|
@ -141,7 +141,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Checks if the given #GValue contains a #GST_TYPE_CAPS value.
|
||||
*/
|
||||
#define GST_VALUE_HOLDS_CAPS(x) (G_VALUE_HOLDS((x), GST_TYPE_CAPS))
|
||||
#define GST_VALUE_HOLDS_CAPS(x) (G_VALUE_HOLDS((x), GST_TYPE_CAPS))
|
||||
|
||||
/**
|
||||
* GST_VALUE_HOLDS_STRUCTURE:
|
||||
|
@ -151,7 +151,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Since: 0.10.15
|
||||
*/
|
||||
#define GST_VALUE_HOLDS_STRUCTURE(x) (G_VALUE_HOLDS((x), GST_TYPE_STRUCTURE))
|
||||
#define GST_VALUE_HOLDS_STRUCTURE(x) (G_VALUE_HOLDS((x), GST_TYPE_STRUCTURE))
|
||||
|
||||
/**
|
||||
* GST_VALUE_HOLDS_BUFFER:
|
||||
|
@ -167,7 +167,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Checks if the given #GValue contains a #GST_TYPE_FRACTION value.
|
||||
*/
|
||||
#define GST_VALUE_HOLDS_FRACTION(x) (G_VALUE_HOLDS((x), gst_fraction_get_type ()))
|
||||
#define GST_VALUE_HOLDS_FRACTION(x) (G_VALUE_HOLDS((x), gst_fraction_get_type ()))
|
||||
|
||||
/**
|
||||
* GST_VALUE_HOLDS_DATE:
|
||||
|
@ -250,7 +250,7 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Returns: the #GType of GstArrayList (which is not explicitly typed)
|
||||
*/
|
||||
#define GST_TYPE_ARRAY gst_value_array_get_type ()
|
||||
#define GST_TYPE_ARRAY gst_value_array_get_type ()
|
||||
|
||||
/**
|
||||
* GST_TYPE_FRACTION:
|
||||
|
@ -327,7 +327,7 @@ G_BEGIN_DECLS
|
|||
* or GST_VALUE_UNORDERED
|
||||
*/
|
||||
typedef gint (* GstValueCompareFunc) (const GValue *value1,
|
||||
const GValue *value2);
|
||||
const GValue *value2);
|
||||
|
||||
/**
|
||||
* GstValueSerializeFunc:
|
||||
|
@ -351,7 +351,7 @@ typedef gchar * (* GstValueSerializeFunc) (const GValue *value1);
|
|||
* Returns: %TRUE for success
|
||||
*/
|
||||
typedef gboolean (* GstValueDeserializeFunc) (GValue *dest,
|
||||
const gchar *s);
|
||||
const gchar *s);
|
||||
|
||||
/**
|
||||
* GstValueUnionFunc:
|
||||
|
@ -365,8 +365,8 @@ typedef gboolean (* GstValueDeserializeFunc) (GValue *dest,
|
|||
* Returns: %TRUE if a union was successful
|
||||
*/
|
||||
typedef gboolean (* GstValueUnionFunc) (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
|
||||
/**
|
||||
* GstValueIntersectFunc:
|
||||
|
@ -383,8 +383,8 @@ typedef gboolean (* GstValueUnionFunc) (GValue *dest,
|
|||
* Returns: %TRUE if the values can intersect
|
||||
*/
|
||||
typedef gboolean (* GstValueIntersectFunc) (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
|
||||
/**
|
||||
* GstValueSubtractFunc:
|
||||
|
@ -398,8 +398,8 @@ typedef gboolean (* GstValueIntersectFunc) (GValue *dest,
|
|||
* Returns: %TRUE if the subtraction is not empty
|
||||
*/
|
||||
typedef gboolean (* GstValueSubtractFunc) (GValue *dest,
|
||||
const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
|
||||
typedef struct _GstValueTable GstValueTable;
|
||||
/**
|
||||
|
@ -418,7 +418,7 @@ struct _GstValueTable {
|
|||
GstValueDeserializeFunc deserialize;
|
||||
|
||||
/*< private >*/
|
||||
void *_gst_reserved [GST_PADDING];
|
||||
gpointer _gst_reserved [GST_PADDING];
|
||||
};
|
||||
|
||||
GType gst_int_range_get_type (void);
|
||||
|
@ -432,137 +432,137 @@ GType gst_value_array_get_type (void);
|
|||
GType gst_date_get_type (void);
|
||||
GType gst_date_time_get_type (void);
|
||||
|
||||
void gst_value_register (const GstValueTable *table);
|
||||
void gst_value_init_and_copy (GValue *dest,
|
||||
const GValue *src);
|
||||
void gst_value_register (const GstValueTable *table);
|
||||
void gst_value_init_and_copy (GValue *dest,
|
||||
const GValue *src);
|
||||
|
||||
gchar * gst_value_serialize (const GValue *value);
|
||||
gboolean gst_value_deserialize (GValue *dest,
|
||||
const gchar *src);
|
||||
gchar * gst_value_serialize (const GValue *value);
|
||||
gboolean gst_value_deserialize (GValue *dest,
|
||||
const gchar *src);
|
||||
|
||||
/* list */
|
||||
void gst_value_list_append_value (GValue *value,
|
||||
const GValue *append_value);
|
||||
void gst_value_list_prepend_value (GValue *value,
|
||||
const GValue *prepend_value);
|
||||
void gst_value_list_concat (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_list_merge (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
guint gst_value_list_get_size (const GValue *value);
|
||||
const GValue * gst_value_list_get_value (const GValue *value,
|
||||
guint index);
|
||||
void gst_value_list_append_value (GValue *value,
|
||||
const GValue *append_value);
|
||||
void gst_value_list_prepend_value (GValue *value,
|
||||
const GValue *prepend_value);
|
||||
void gst_value_list_concat (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_list_merge (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
guint gst_value_list_get_size (const GValue *value);
|
||||
const GValue * gst_value_list_get_value (const GValue *value,
|
||||
guint index);
|
||||
|
||||
/* array */
|
||||
void gst_value_array_append_value (GValue *value,
|
||||
const GValue *append_value);
|
||||
void gst_value_array_prepend_value (GValue *value,
|
||||
const GValue *prepend_value);
|
||||
guint gst_value_array_get_size (const GValue *value);
|
||||
const GValue * gst_value_array_get_value (const GValue *value,
|
||||
guint index);
|
||||
void gst_value_array_append_value (GValue *value,
|
||||
const GValue *append_value);
|
||||
void gst_value_array_prepend_value (GValue *value,
|
||||
const GValue *prepend_value);
|
||||
guint gst_value_array_get_size (const GValue *value);
|
||||
const GValue * gst_value_array_get_value (const GValue *value,
|
||||
guint index);
|
||||
|
||||
/* int range */
|
||||
void gst_value_set_int_range (GValue *value,
|
||||
gint start,
|
||||
gint end);
|
||||
gint gst_value_get_int_range_min (const GValue *value);
|
||||
gint gst_value_get_int_range_max (const GValue *value);
|
||||
void gst_value_set_int_range (GValue *value,
|
||||
gint start,
|
||||
gint end);
|
||||
gint gst_value_get_int_range_min (const GValue *value);
|
||||
gint gst_value_get_int_range_max (const GValue *value);
|
||||
|
||||
/* int64 range */
|
||||
void gst_value_set_int64_range (GValue *value,
|
||||
gint64 start,
|
||||
gint64 end);
|
||||
gint64 gst_value_get_int64_range_min (const GValue *value);
|
||||
gint64 gst_value_get_int64_range_max (const GValue *value);
|
||||
void gst_value_set_int64_range (GValue *value,
|
||||
gint64 start,
|
||||
gint64 end);
|
||||
gint64 gst_value_get_int64_range_min (const GValue *value);
|
||||
gint64 gst_value_get_int64_range_max (const GValue *value);
|
||||
|
||||
/* double range */
|
||||
void gst_value_set_double_range (GValue *value,
|
||||
gdouble start,
|
||||
gdouble end);
|
||||
gdouble gst_value_get_double_range_min (const GValue *value);
|
||||
gdouble gst_value_get_double_range_max (const GValue *value);
|
||||
void gst_value_set_double_range (GValue *value,
|
||||
gdouble start,
|
||||
gdouble end);
|
||||
gdouble gst_value_get_double_range_min (const GValue *value);
|
||||
gdouble gst_value_get_double_range_max (const GValue *value);
|
||||
|
||||
/* caps */
|
||||
const GstCaps * gst_value_get_caps (const GValue *value);
|
||||
void gst_value_set_caps (GValue *value,
|
||||
const GstCaps *caps);
|
||||
const GstCaps * gst_value_get_caps (const GValue *value);
|
||||
void gst_value_set_caps (GValue *value,
|
||||
const GstCaps *caps);
|
||||
|
||||
/* structure */
|
||||
const GstStructure *
|
||||
gst_value_get_structure (const GValue *value);
|
||||
void gst_value_set_structure (GValue *value,
|
||||
const GstStructure *structure);
|
||||
gst_value_get_structure (const GValue *value);
|
||||
void gst_value_set_structure (GValue *value,
|
||||
const GstStructure *structure);
|
||||
|
||||
/* fraction */
|
||||
void gst_value_set_fraction (GValue *value,
|
||||
gint numerator,
|
||||
gint denominator);
|
||||
gint gst_value_get_fraction_numerator (const GValue *value);
|
||||
gint gst_value_get_fraction_denominator(const GValue *value);
|
||||
gboolean gst_value_fraction_multiply (GValue *product,
|
||||
const GValue *factor1,
|
||||
const GValue *factor2);
|
||||
gboolean gst_value_fraction_subtract (GValue * dest,
|
||||
const GValue * minuend,
|
||||
const GValue * subtrahend);
|
||||
void gst_value_set_fraction (GValue *value,
|
||||
gint numerator,
|
||||
gint denominator);
|
||||
gint gst_value_get_fraction_numerator (const GValue *value);
|
||||
gint gst_value_get_fraction_denominator (const GValue *value);
|
||||
gboolean gst_value_fraction_multiply (GValue *product,
|
||||
const GValue *factor1,
|
||||
const GValue *factor2);
|
||||
gboolean gst_value_fraction_subtract (GValue * dest,
|
||||
const GValue * minuend,
|
||||
const GValue * subtrahend);
|
||||
|
||||
/* fraction range */
|
||||
void gst_value_set_fraction_range (GValue *value,
|
||||
const GValue *start,
|
||||
const GValue *end);
|
||||
void gst_value_set_fraction_range_full (GValue *value,
|
||||
gint numerator_start,
|
||||
gint denominator_start,
|
||||
gint numerator_end,
|
||||
gint denominator_end);
|
||||
const GValue *gst_value_get_fraction_range_min (const GValue *value);
|
||||
const GValue *gst_value_get_fraction_range_max (const GValue *value);
|
||||
void gst_value_set_fraction_range (GValue *value,
|
||||
const GValue *start,
|
||||
const GValue *end);
|
||||
void gst_value_set_fraction_range_full (GValue *value,
|
||||
gint numerator_start,
|
||||
gint denominator_start,
|
||||
gint numerator_end,
|
||||
gint denominator_end);
|
||||
const GValue *gst_value_get_fraction_range_min (const GValue *value);
|
||||
const GValue *gst_value_get_fraction_range_max (const GValue *value);
|
||||
|
||||
/* date */
|
||||
const GDate * gst_value_get_date (const GValue *value);
|
||||
void gst_value_set_date (GValue *value,
|
||||
const GDate *date);
|
||||
const GDate * gst_value_get_date (const GValue *value);
|
||||
void gst_value_set_date (GValue *value,
|
||||
const GDate *date);
|
||||
|
||||
/* compare */
|
||||
gint gst_value_compare (const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_compare (const GValue *value1,
|
||||
const GValue *value2);
|
||||
gint gst_value_compare (const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_compare (const GValue *value1,
|
||||
const GValue *value2);
|
||||
/* union */
|
||||
gboolean gst_value_union (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_union (const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_register_union_func (GType type1,
|
||||
GType type2,
|
||||
GstValueUnionFunc func);
|
||||
gboolean gst_value_union (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_union (const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_register_union_func (GType type1,
|
||||
GType type2,
|
||||
GstValueUnionFunc func);
|
||||
|
||||
/* intersection */
|
||||
gboolean gst_value_intersect (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_intersect (const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_register_intersect_func (GType type1,
|
||||
GType type2,
|
||||
GstValueIntersectFunc func);
|
||||
gboolean gst_value_intersect (GValue *dest,
|
||||
const GValue *value1,
|
||||
const GValue *value2);
|
||||
gboolean gst_value_can_intersect (const GValue *value1,
|
||||
const GValue *value2);
|
||||
void gst_value_register_intersect_func (GType type1,
|
||||
GType type2,
|
||||
GstValueIntersectFunc func);
|
||||
|
||||
/* subtraction */
|
||||
gboolean gst_value_subtract (GValue *dest,
|
||||
const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
gboolean gst_value_can_subtract (const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
void gst_value_register_subtract_func (GType minuend_type,
|
||||
GType subtrahend_type,
|
||||
GstValueSubtractFunc func);
|
||||
gboolean gst_value_subtract (GValue *dest,
|
||||
const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
gboolean gst_value_can_subtract (const GValue *minuend,
|
||||
const GValue *subtrahend);
|
||||
void gst_value_register_subtract_func (GType minuend_type,
|
||||
GType subtrahend_type,
|
||||
GstValueSubtractFunc func);
|
||||
|
||||
/* fixation */
|
||||
gboolean gst_value_is_fixed (const GValue *value);
|
||||
gboolean gst_value_is_fixed (const GValue *value);
|
||||
gboolean gst_value_fixate (GValue *dest,
|
||||
const GValue *src);
|
||||
|
||||
|
|
Loading…
Reference in a new issue