summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Santos <thiagoss@osg.samsung.com>2015-08-14 08:59:51 -0300
committerThiago Santos <thiagoss@osg.samsung.com>2015-08-14 13:41:58 -0300
commitea9b6a7e3c4eea512650adf530b7f1acb0eccd84 (patch)
tree7b48cdfca1af96e9bef35eee49a76c2a126d6f69
parent8a64592481dab985ca520a5b1cb394a609275c60 (diff)
videodecoder: expose default query handling function
Subclasses can use it to select what queries they want to handle and forward the rest to the default handling function. API: gst_video_decoder_sink_query_default https://bugzilla.gnome.org/show_bug.cgi?id=753623
-rw-r--r--gst-libs/gst/video/gstvideodecoder.c16
-rw-r--r--gst-libs/gst/video/gstvideodecoder.h3
-rw-r--r--win32/common/libgstvideo.def1
3 files changed, 17 insertions, 3 deletions
diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c
index 4aed9c4c7..c680722a9 100644
--- a/gst-libs/gst/video/gstvideodecoder.c
+++ b/gst-libs/gst/video/gstvideodecoder.c
@@ -476,8 +476,6 @@ static GstFlowReturn gst_video_decoder_parse_available (GstVideoDecoder * dec,
gboolean at_eos, gboolean new_buffer);
static gboolean gst_video_decoder_negotiate_unlocked (GstVideoDecoder *
decoder);
-static gboolean gst_video_decoder_sink_query_default (GstVideoDecoder * decoder,
- GstQuery * query);
static gboolean gst_video_decoder_src_query_default (GstVideoDecoder * decoder,
GstQuery * query);
@@ -1805,7 +1803,19 @@ gst_video_decoder_sink_getcaps (GstVideoDecoder * decoder, GstCaps * filter)
return caps;
}
-static gboolean
+/**
+ * gst_video_decoder_sink_query_default:
+ * @decoder: a #GstVideoDecoder
+ * @query: (transfer none): a #GstQuery
+ *
+ * Calls the default query handler for #GstVideoDecoder. It is useful
+ * when a subclass only want to handle a particular type of query and
+ * wants to use the default handler for others.
+ *
+ * Returns: a boolean, representing if the query was handled.
+ * Since: 1.6
+ */
+gboolean
gst_video_decoder_sink_query_default (GstVideoDecoder * decoder,
GstQuery * query)
{
diff --git a/gst-libs/gst/video/gstvideodecoder.h b/gst-libs/gst/video/gstvideodecoder.h
index b2f531d4e..779048e06 100644
--- a/gst-libs/gst/video/gstvideodecoder.h
+++ b/gst-libs/gst/video/gstvideodecoder.h
@@ -424,6 +424,9 @@ GstCaps * gst_video_decoder_proxy_getcaps (GstVideoDecoder * decoder,
GstCaps * caps,
GstCaps * filter);
+gboolean gst_video_decoder_sink_query_default (GstVideoDecoder * decoder,
+ GstQuery * query);
+
G_END_DECLS
diff --git a/win32/common/libgstvideo.def b/win32/common/libgstvideo.def
index 8a8b40f7b..ef5d6501b 100644
--- a/win32/common/libgstvideo.def
+++ b/win32/common/libgstvideo.def
@@ -129,6 +129,7 @@ EXPORTS
gst_video_decoder_set_needs_format
gst_video_decoder_set_output_state
gst_video_decoder_set_packetized
+ gst_video_decoder_sink_query_default
gst_video_dither_flags_get_type
gst_video_dither_free
gst_video_dither_line