audioencoders: use template subset check for accept-caps
It is faster than doing a query that propagates downstream and
should be enough
Elements: faac, gsmenc, opusenc, sbcenc, voamrwbenc, adpcmenc, sirenenc
diff --git a/ext/faac/gstfaac.c b/ext/faac/gstfaac.c
index a0c2e08..9adc11f 100644
--- a/ext/faac/gstfaac.c
+++ b/ext/faac/gstfaac.c
@@ -243,6 +243,7 @@
static void
gst_faac_init (GstFaac * faac)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (faac));
}
static void
diff --git a/ext/gsm/gstgsmenc.c b/ext/gsm/gstgsmenc.c
index d9a0aee..54ede2e 100644
--- a/ext/gsm/gstgsmenc.c
+++ b/ext/gsm/gstgsmenc.c
@@ -97,6 +97,7 @@
static void
gst_gsmenc_init (GstGSMEnc * gsmenc)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (gsmenc));
}
static gboolean
diff --git a/ext/opus/gstopusenc.c b/ext/opus/gstopusenc.c
index 70c7718..19b6d6e 100644
--- a/ext/opus/gstopusenc.c
+++ b/ext/opus/gstopusenc.c
@@ -376,6 +376,8 @@
GST_DEBUG_OBJECT (enc, "init");
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (enc));
+
g_mutex_init (&enc->property_lock);
enc->n_channels = -1;
diff --git a/ext/sbc/gstsbcenc.c b/ext/sbc/gstsbcenc.c
index 7aef4db..02ca1be 100644
--- a/ext/sbc/gstsbcenc.c
+++ b/ext/sbc/gstsbcenc.c
@@ -362,6 +362,7 @@
static void
gst_sbc_enc_init (GstSbcEnc * self)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (self));
self->subbands = 0;
self->blocks = 0;
self->rate = 0;
diff --git a/ext/voaacenc/gstvoaacenc.c b/ext/voaacenc/gstvoaacenc.c
index 756191a..315f373 100644
--- a/ext/voaacenc/gstvoaacenc.c
+++ b/ext/voaacenc/gstvoaacenc.c
@@ -177,6 +177,7 @@
static void
gst_voaacenc_init (GstVoAacEnc * voaacenc)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (voaacenc));
voaacenc->bitrate = VOAAC_ENC_DEFAULT_BITRATE;
voaacenc->output_format = VOAAC_ENC_DEFAULT_OUTPUTFORMAT;
diff --git a/ext/voamrwbenc/gstvoamrwbenc.c b/ext/voamrwbenc/gstvoamrwbenc.c
index 305f845..ae09f06 100644
--- a/ext/voamrwbenc/gstvoamrwbenc.c
+++ b/ext/voamrwbenc/gstvoamrwbenc.c
@@ -190,6 +190,8 @@
static void
gst_voamrwbenc_init (GstVoAmrWbEnc * amrwbenc)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (amrwbenc));
+
/* init rest */
amrwbenc->handle = NULL;
amrwbenc->channels = 0;
diff --git a/gst/adpcmenc/adpcmenc.c b/gst/adpcmenc/adpcmenc.c
index 36d336c..def90cf 100644
--- a/gst/adpcmenc/adpcmenc.c
+++ b/gst/adpcmenc/adpcmenc.c
@@ -421,6 +421,8 @@
static void
adpcmenc_init (ADPCMEnc * enc)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (enc));
+
/* Set defaults. */
enc->blocksize = DEFAULT_ADPCM_BLOCK_SIZE;
enc->layout = DEFAULT_ADPCM_LAYOUT;
diff --git a/gst/siren/gstsirenenc.c b/gst/siren/gstsirenenc.c
index 20e3c03..69b4d80 100644
--- a/gst/siren/gstsirenenc.c
+++ b/gst/siren/gstsirenenc.c
@@ -92,6 +92,7 @@
static void
gst_siren_enc_init (GstSirenEnc * enc)
{
+ GST_PAD_SET_ACCEPT_TEMPLATE (GST_AUDIO_ENCODER_SINK_PAD (enc));
}
static gboolean