[FFmpeg-devel] [PATCH v4] [GSoC] [AAC] aaccoder: Implement Perceptual Noise Substitution for AAC

Claudio Freire klaussfreire at gmail.com
Wed Apr 15 18:55:28 CEST 2015


On Wed, Apr 15, 2015 at 8:18 AM, Rostislav Pehlivanov
<atomnuker at gmail.com> wrote:
> @@ -828,9 +882,17 @@ static void search_for_quantizers_twoloop(AVCodecContext *avctx,
>
>          fflag = 0;
>          minscaler = av_clip(minscaler, 60, 255 - SCALE_MAX_DIFF);
> +
> +        for (w = 0; w < sce->ics.num_windows; w += sce->ics.group_len[w])
> +            for (g = 0; g < sce->ics.num_swb; g++)
> +                if (sce->band_type[w*16+g] == NOISE_BT)
> +                    sce->sf_idx[w*16+g] = av_clip(noise_sf[w*16+g], minscaler_n, minscaler_n + SCALE_MAX_DIFF);
> +
>          for (w = 0; w < sce->ics.num_windows; w += sce->ics.group_len[w]) {
>              for (g = 0; g < sce->ics.num_swb; g++) {
>                  int prevsc = sce->sf_idx[w*16+g];
> +                if (sce->band_type[w*16+g] == NOISE_BT)
> +                    continue;
>                  if (dists[w*16+g] > uplims[w*16+g] && sce->sf_idx[w*16+g] > 60) {
>                      if (find_min_book(maxvals[w*16+g], sce->sf_idx[w*16+g]-1))
>                          sce->sf_idx[w*16+g]--;


This is still done at each iteration rather than at the end.

Still, it will be a correct result nonetheless (it's idempotent now),
so I believe it can be committed.


More information about the ffmpeg-devel mailing list