diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2012-03-02 10:00:55 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2012-03-02 10:00:55 +0100 |
commit | f7939bb43fca241472a61d394f2457f5978dd5ab (patch) | |
tree | 5544f06f6732b62455192c20805cede6216ad9eb /gst-libs/gst | |
parent | 502c12f8274ba97e96c8b2501550201199fdb49c (diff) | |
parent | 87d41b87a0bf12a403221964a8588bf611b15c6a (diff) |
Merge branch 'master' into 0.11
Conflicts:
NEWS
RELEASE
configure.ac
docs/plugins/gst-plugins-base-plugins.args
docs/plugins/gst-plugins-base-plugins.hierarchy
docs/plugins/gst-plugins-base-plugins.interfaces
docs/plugins/inspect/plugin-adder.xml
docs/plugins/inspect/plugin-alsa.xml
docs/plugins/inspect/plugin-app.xml
docs/plugins/inspect/plugin-audioconvert.xml
docs/plugins/inspect/plugin-audiorate.xml
docs/plugins/inspect/plugin-audioresample.xml
docs/plugins/inspect/plugin-audiotestsrc.xml
docs/plugins/inspect/plugin-cdparanoia.xml
docs/plugins/inspect/plugin-encoding.xml
docs/plugins/inspect/plugin-ffmpegcolorspace.xml
docs/plugins/inspect/plugin-gdp.xml
docs/plugins/inspect/plugin-gio.xml
docs/plugins/inspect/plugin-gnomevfs.xml
docs/plugins/inspect/plugin-libvisual.xml
docs/plugins/inspect/plugin-ogg.xml
docs/plugins/inspect/plugin-pango.xml
docs/plugins/inspect/plugin-playback.xml
docs/plugins/inspect/plugin-subparse.xml
docs/plugins/inspect/plugin-tcp.xml
docs/plugins/inspect/plugin-theora.xml
docs/plugins/inspect/plugin-typefindfunctions.xml
docs/plugins/inspect/plugin-uridecodebin.xml
docs/plugins/inspect/plugin-videorate.xml
docs/plugins/inspect/plugin-videoscale.xml
docs/plugins/inspect/plugin-videotestsrc.xml
docs/plugins/inspect/plugin-volume.xml
docs/plugins/inspect/plugin-vorbis.xml
docs/plugins/inspect/plugin-ximagesink.xml
docs/plugins/inspect/plugin-xvimagesink.xml
gst-libs/gst/app/gstappsink.c
gst-libs/gst/audio/mixer.c
gst-libs/gst/audio/mixer.h
gst-libs/gst/tag/gstxmptag.c
gst-libs/gst/video/colorbalance.c
gst-libs/gst/video/colorbalance.h
gst/adder/gstadder.c
gst/playback/gstplaybasebin.c
gst/playback/gstplaybin2.c
gst/playback/gstplaysink.c
gst/videoscale/gstvideoscale.c
tests/check/elements/videoscale.c
tests/examples/seek/seek.c
tests/examples/v4l/probe.c
win32/common/_stdint.h
win32/common/audio-enumtypes.c
win32/common/config.h
Diffstat (limited to 'gst-libs/gst')
-rw-r--r-- | gst-libs/gst/app/gstappsink.c | 26 | ||||
-rw-r--r-- | gst-libs/gst/audio/mixer.c | 6 | ||||
-rw-r--r-- | gst-libs/gst/audio/mixer.h | 6 | ||||
-rw-r--r-- | gst-libs/gst/audio/mixerutils.c | 4 | ||||
-rw-r--r-- | gst-libs/gst/interfaces/navigation.h | 2 | ||||
-rw-r--r-- | gst-libs/gst/tag/gstxmptag.c | 6 | ||||
-rw-r--r-- | gst-libs/gst/video/colorbalance.c | 8 | ||||
-rw-r--r-- | gst-libs/gst/video/colorbalance.h | 8 |
8 files changed, 49 insertions, 17 deletions
diff --git a/gst-libs/gst/app/gstappsink.c b/gst-libs/gst/app/gstappsink.c index 5239e82c5..25c95ebf0 100644 --- a/gst-libs/gst/app/gstappsink.c +++ b/gst-libs/gst/app/gstappsink.c @@ -158,6 +158,7 @@ static gboolean gst_app_sink_unlock_stop (GstBaseSink * bsink); static gboolean gst_app_sink_start (GstBaseSink * psink); static gboolean gst_app_sink_stop (GstBaseSink * psink); static gboolean gst_app_sink_event (GstBaseSink * sink, GstEvent * event); +static gboolean gst_app_sink_query (GstBaseSink * bsink, GstQuery * query); static GstFlowReturn gst_app_sink_preroll (GstBaseSink * psink, GstBuffer * buffer); static GstFlowReturn gst_app_sink_render (GstBaseSink * psink, @@ -337,6 +338,7 @@ gst_app_sink_class_init (GstAppSinkClass * klass) basesink_class->render = gst_app_sink_render; basesink_class->get_caps = gst_app_sink_getcaps; basesink_class->set_caps = gst_app_sink_setcaps; + basesink_class->query = gst_app_sink_query; klass->pull_preroll = gst_app_sink_pull_preroll; klass->pull_sample = gst_app_sink_pull_sample; @@ -774,6 +776,30 @@ gst_app_sink_getcaps (GstBaseSink * psink, GstCaps * filter) return caps; } +static gboolean +gst_app_sink_query (GstBaseSink * bsink, GstQuery * query) +{ + gboolean ret; + + switch (GST_QUERY_TYPE (query)) { + case GST_QUERY_SEEKING:{ + GstFormat fmt; + + /* we don't supporting seeking */ + gst_query_parse_seeking (query, &fmt, NULL, NULL, NULL); + gst_query_set_seeking (query, fmt, FALSE, 0, -1); + ret = TRUE; + break; + } + + default: + ret = GST_BASE_SINK_CLASS (parent_class)->query (bsink, query); + break; + } + + return ret; +} + /* external API */ /** diff --git a/gst-libs/gst/audio/mixer.c b/gst-libs/gst/audio/mixer.c index 0fca9a83f..4c52b25a3 100644 --- a/gst-libs/gst/audio/mixer.c +++ b/gst-libs/gst/audio/mixer.c @@ -83,9 +83,8 @@ gst_mixer_get_type (void) static void gst_mixer_class_init (GstMixerInterface * iface) { - iface->mixer_type = GST_MIXER_SOFTWARE; - /* default virtual functions */ + iface->get_mixer_type = NULL; iface->list_tracks = NULL; iface->set_volume = NULL; iface->get_volume = NULL; @@ -304,7 +303,8 @@ gst_mixer_get_mixer_type (GstMixer * mixer) { GstMixerInterface *iface = GST_MIXER_GET_INTERFACE (mixer); - return iface->mixer_type; + g_return_val_if_fail (iface->get_mixer_type != NULL, GST_MIXER_SOFTWARE); + return iface->get_mixer_type (mixer); } /** diff --git a/gst-libs/gst/audio/mixer.h b/gst-libs/gst/audio/mixer.h index 2cb618bbf..1de602d63 100644 --- a/gst-libs/gst/audio/mixer.h +++ b/gst-libs/gst/audio/mixer.h @@ -37,8 +37,6 @@ G_BEGIN_DECLS #define GST_MIXER_GET_INTERFACE(inst) \ (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_MIXER, GstMixerInterface)) -#define GST_MIXER_TYPE(iface) (iface->mixer_type) - typedef struct _GstMixer GstMixer; typedef struct _GstMixerInterface GstMixerInterface; @@ -112,8 +110,6 @@ typedef enum struct _GstMixerInterface { GTypeInterface iface; - GstMixerType mixer_type; - /* virtual functions */ const GList * (* list_tracks) (GstMixer *mixer); @@ -137,6 +133,8 @@ struct _GstMixerInterface { GstMixerOptions *opts); GstMixerFlags (* get_mixer_flags) (GstMixer *mixer); + + GstMixerType (* get_mixer_type) (GstMixer *mixer); }; GType gst_mixer_get_type (void); diff --git a/gst-libs/gst/audio/mixerutils.c b/gst-libs/gst/audio/mixerutils.c index 9653d01ae..ff29ea329 100644 --- a/gst-libs/gst/audio/mixerutils.c +++ b/gst-libs/gst/audio/mixerutils.c @@ -31,6 +31,10 @@ * </refsect2> */ +/* FIXME 0.11: suppress warnings for deprecated API such as GValueArray + * with newer GLib versions (>= 2.31.0) */ +#define GLIB_DISABLE_DEPRECATION_WARNINGS + #ifdef HAVE_CONFIG_H #include "config.h" #endif diff --git a/gst-libs/gst/interfaces/navigation.h b/gst-libs/gst/interfaces/navigation.h index 40cfff99f..6bbe01043 100644 --- a/gst-libs/gst/interfaces/navigation.h +++ b/gst-libs/gst/interfaces/navigation.h @@ -44,7 +44,7 @@ typedef struct _GstNavigationInterface GstNavigationInterface; * @iface: the parent interface * @send_event: sending a navigation event * - * Color-balance interface. + * Navigation interface. */ struct _GstNavigationInterface { GTypeInterface iface; diff --git a/gst-libs/gst/tag/gstxmptag.c b/gst-libs/gst/tag/gstxmptag.c index b011cb01a..4f416b83f 100644 --- a/gst-libs/gst/tag/gstxmptag.c +++ b/gst-libs/gst/tag/gstxmptag.c @@ -173,9 +173,11 @@ xmp_tag_type_get_name (GstXmpTagType tagtype) case GstXmpTagTypeBag: return "rdf:Bag"; default: - g_assert_not_reached (); + break; } - return NULL; /* make compiler happy with -DG_DISABLE_ASSERT */ + + /* Make compiler happy */ + g_return_val_if_reached (""); } struct _PendingXmpTag diff --git a/gst-libs/gst/video/colorbalance.c b/gst-libs/gst/video/colorbalance.c index a73c7d7ff..57a4de4a7 100644 --- a/gst-libs/gst/video/colorbalance.c +++ b/gst-libs/gst/video/colorbalance.c @@ -106,12 +106,11 @@ gst_color_balance_class_init (GstColorBalanceInterface * iface) initialized = TRUE; } - iface->balance_type = GST_COLOR_BALANCE_SOFTWARE; - /* default virtual functions */ iface->list_channels = NULL; iface->set_value = NULL; iface->get_value = NULL; + iface->get_balance_type = NULL; } /** @@ -215,7 +214,10 @@ gst_color_balance_get_balance_type (GstColorBalance * balance) iface = GST_COLOR_BALANCE_GET_INTERFACE (balance); - return iface->balance_type; + g_return_val_if_fail (iface->get_balance_type != NULL, + GST_COLOR_BALANCE_SOFTWARE); + + return iface->get_balance_type (balance); } /** diff --git a/gst-libs/gst/video/colorbalance.h b/gst-libs/gst/video/colorbalance.h index 8cc4276f0..7f43b0dcf 100644 --- a/gst-libs/gst/video/colorbalance.h +++ b/gst-libs/gst/video/colorbalance.h @@ -36,8 +36,6 @@ G_BEGIN_DECLS #define GST_COLOR_BALANCE_GET_INTERFACE(inst) \ (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_COLOR_BALANCE, GstColorBalanceInterface)) -#define GST_COLOR_BALANCE_TYPE(iface) (iface->balance_type) - typedef struct _GstColorBalance GstColorBalance; typedef struct _GstColorBalanceInterface GstColorBalanceInterface; @@ -73,8 +71,6 @@ typedef enum struct _GstColorBalanceInterface { GTypeInterface iface; - GstColorBalanceType balance_type; - /* virtual functions */ const GList * (* list_channels) (GstColorBalance *balance); @@ -83,11 +79,15 @@ struct _GstColorBalanceInterface { gint value); gint (* get_value) (GstColorBalance *balance, GstColorBalanceChannel *channel); + GstColorBalanceType (*get_balance_type) (GstColorBalance *balance); /* signals */ void (* value_changed) (GstColorBalance *balance, GstColorBalanceChannel *channel, gint value); + + /*< private >*/ + gpointer _gst_reserved[GST_PADDING-1]; }; GType gst_color_balance_get_type (void); |