summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Santos <thiagoss@osg.samsung.com>2015-08-14 08:58:58 -0300
committerThiago Santos <thiagoss@osg.samsung.com>2015-08-14 13:41:58 -0300
commit8a64592481dab985ca520a5b1cb394a609275c60 (patch)
treeb771f57367e93e865ef92d20b205786d82e78a74
parent862c85ce4a14757a6b715111971e47b005e42f6b (diff)
audiodecoder: 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_audio_decoder_sink_query_default https://bugzilla.gnome.org/show_bug.cgi?id=753623
-rw-r--r--gst-libs/gst/audio/gstaudiodecoder.c16
-rw-r--r--gst-libs/gst/audio/gstaudiodecoder.h3
-rw-r--r--win32/common/libgstaudio.def1
3 files changed, 17 insertions, 3 deletions
diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c
index 0b283d3f8..e831be343 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.c
+++ b/gst-libs/gst/audio/gstaudiodecoder.c
@@ -383,8 +383,6 @@ static gboolean gst_audio_decoder_negotiate_default (GstAudioDecoder * dec);
static gboolean gst_audio_decoder_negotiate_unlocked (GstAudioDecoder * dec);
static gboolean gst_audio_decoder_handle_gap (GstAudioDecoder * dec,
GstEvent * event);
-static gboolean gst_audio_decoder_sink_query_default (GstAudioDecoder * dec,
- GstQuery * query);
static gboolean gst_audio_decoder_src_query_default (GstAudioDecoder * dec,
GstQuery * query);
@@ -2634,7 +2632,19 @@ gst_audio_decoder_sink_getcaps (GstAudioDecoder * decoder, GstCaps * filter)
return caps;
}
-static gboolean
+/**
+ * gst_audio_decoder_sink_query_default:
+ * @decoder: a #GstAudioDecoder
+ * @query: (transfer none): a #GstQuery
+ *
+ * Calls the default query handler for #GstAudioDecoder. 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_audio_decoder_sink_query_default (GstAudioDecoder * dec, GstQuery * query)
{
GstPad *pad = GST_AUDIO_DECODER_SINK_PAD (dec);
diff --git a/gst-libs/gst/audio/gstaudiodecoder.h b/gst-libs/gst/audio/gstaudiodecoder.h
index 8140727a3..3e9fa0332 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.h
+++ b/gst-libs/gst/audio/gstaudiodecoder.h
@@ -394,6 +394,9 @@ void gst_audio_decoder_get_allocator (GstAudioDecoder * dec,
void gst_audio_decoder_merge_tags (GstAudioDecoder * dec,
const GstTagList * tags, GstTagMergeMode mode);
+gboolean gst_audio_decoder_sink_query_default (GstAudioDecoder * dec,
+ GstQuery * query);
+
G_END_DECLS
#endif /* _GST_AUDIO_DECODER_H_ */
diff --git a/win32/common/libgstaudio.def b/win32/common/libgstaudio.def
index d481b92e5..39e2742fc 100644
--- a/win32/common/libgstaudio.def
+++ b/win32/common/libgstaudio.def
@@ -67,6 +67,7 @@ EXPORTS
gst_audio_decoder_set_plc
gst_audio_decoder_set_plc_aware
gst_audio_decoder_set_tolerance
+ gst_audio_decoder_sink_query_default
gst_audio_downmix_meta_api_get_type
gst_audio_downmix_meta_get_info
gst_audio_encoder_allocate_output_buffer