aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/aacpsy.c
diff options
context:
space:
mode:
authorNathan Caldwell <saintdev@gmail.com>2011-05-18 23:14:59 -0600
committerAlex Converse <alex.converse@gmail.com>2011-06-29 14:28:53 -0700
commit01344fe409da286cd377f9af610eb4c4888687ec (patch)
tree7dd36feca29f22bcfff6d6a73f7d90f30f7abe97 /libavcodec/aacpsy.c
parent0bc01cc9fe83fe676690fd200e7d74cdab595f15 (diff)
downloadffmpeg-01344fe409da286cd377f9af610eb4c4888687ec.tar.gz
aacenc: Implement dummy channel group analysis that just calls the single channel analysis for each channel.
Diffstat (limited to 'libavcodec/aacpsy.c')
-rw-r--r--libavcodec/aacpsy.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/libavcodec/aacpsy.c b/libavcodec/aacpsy.c
index 79d708439c..ff17846e9d 100644
--- a/libavcodec/aacpsy.c
+++ b/libavcodec/aacpsy.c
@@ -741,6 +741,16 @@ static void psy_3gpp_analyze(FFPsyContext *ctx, int channel,
memcpy(pch->prev_band, pch->band, sizeof(pch->band));
}
+static void psy_3gpp_analyze_group(FFPsyContext *ctx, int channel,
+ const float **coeffs, const FFPsyWindowInfo *wi)
+{
+ int ch;
+ FFPsyChannelGroup *group = ff_psy_find_group(ctx, channel);
+
+ for (ch = 0; ch < group->num_ch; ch++)
+ psy_3gpp_analyze(ctx, channel + ch, coeffs[ch], &wi[ch]);
+}
+
static av_cold void psy_3gpp_end(FFPsyContext *apc)
{
AacPsyContext *pctx = (AacPsyContext*) apc->model_priv_data;
@@ -921,6 +931,6 @@ const FFPsyModel ff_aac_psy_model =
.init = psy_3gpp_init,
.window = psy_lame_window,
.analyze = psy_3gpp_analyze,
- .analyze_group = NULL,
+ .analyze_group = psy_3gpp_analyze_group,
.end = psy_3gpp_end,
};