[FFmpeg-trac] #2686(avcodec:open): Native AAC encoder collapses at high bitrates on some samples

FFmpeg trac at avcodec.org
Sat Dec 20 15:29:44 CET 2014


#2686: Native AAC encoder collapses at high bitrates on some samples
-------------------------------------+-------------------------------------
             Reporter:  Kamedo2      |                    Owner:
                 Type:  defect       |  klaussfreire
             Priority:  normal       |                   Status:  open
              Version:  git-master   |                Component:  avcodec
             Keywords:  aac          |               Resolution:
  regression                         |               Blocked By:
             Blocking:               |  Reproduced by developer:  1
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by Kamedo2):

 Assertion error on v9b patch {{{-c:a aac -strict experimental -aac_coder
 anmr}}}
 {{{
 Assertion diff >= 0 && diff <= 120 failed at libavcodec/aacenc.c:399
 }}}
 investigated.


 {{{
 /**
  * Encode scalefactors.
  */
 static void encode_scale_factors(AVCodecContext *avctx, AACEncContext *s,
                                  SingleChannelElement *sce)
 {
     int off = sce->sf_idx[0], diff;
     int i, w;

     for (w = 0; w < sce->ics.num_windows; w += sce->ics.group_len[w]) {
         for (i = 0; i < sce->ics.max_sfb; i++) {
             if (!sce->zeroes[w*16 + i]) {
                 diff = sce->sf_idx[w*16 + i] - off +
 SCALE_DIFF_ZERO;if(diff<0 || diff>120)fprintf(stderr, "|| || k|| %d|| %d||
 %d|| %d|| %d|| %d|| %d|| %d||\n",sce->ics.num_windows, sce->ics.max_sfb,
 w, i, sce->sf_idx[w*16+i], off , SCALE_DIFF_ZERO, diff);
                 av_assert0(diff >= 0 && diff <= 120);
                 off = sce->sf_idx[w*16 + i];
                 put_bits(&s->pb, ff_aac_scalefactor_bits[diff],
 ff_aac_scalefactor_code[diff]);
             }
         }
     }
 }
 }}}


 ||=audio
 file=||=rate=||=wmax=||=imax=||=w=||=i=||=sf_idx[w*16+i]=||=off=||=SCALE_DIFF_ZERO=||=diff=||
 ||FFmpeg_anmr_error6 ||  82k|| 1|| 38|| 0|| 31|| 187|| 125|| 60|| 122||
 ||FFmpeg_anmr_error6 ||  84k|| 1|| 38|| 0|| 33|| 124|| 185|| 60|| -1||
 ||FFmpeg_anmr_error6 ||  88k|| 1|| 39|| 0|| 31|| 187|| 125|| 60|| 122||
 ||FFmpeg_anmr_error6 ||  96k|| 1|| 40|| 0|| 31|| 187|| 125|| 60|| 122||
 ||FFmpeg_anmr_error6 || 112k|| 1|| 41|| 0|| 31|| 172|| 111|| 60|| 121||
 ||FFmpeg_anmr_error6 || 128k|| 1|| 42|| 0|| 31|| 169|| 108|| 60|| 121||
 ||FFmpeg_anmr_error6 || 144k|| 1|| 43|| 0|| 31|| 169|| 107|| 60|| 122||
 ||FFmpeg_anmr_error6 || 160k|| 1|| 43|| 0|| 31|| 170|| 107|| 60|| 123||
 ||FFmpeg_anmr_error6 || 176k|| 1|| 44|| 0|| 31|| 173|| 111|| 60|| 122||
 ||FFmpeg_anmr_error6 || 184k|| 1|| 44|| 0|| 31|| 171|| 109|| 60|| 122||
 ||FFmpeg_anmr_error6 || 186k|| 1|| 44|| 0|| 32|| 181|| 120|| 60|| 121||
 ||FFmpeg_anmr_error7 || 192k|| 8|| 12|| 7|| 0|| 181|| 119|| 60|| 122||
 ||FFmpeg_anmr_error7 || 196k|| 8|| 12|| 7|| 0|| 181|| 119|| 60|| 122||
 ||FFmpeg_anmr_error7 || 200k|| 8|| 12|| 7|| 0|| 181|| 119|| 60|| 122||
 ||FFmpeg_anmr_error7 || 208k|| 8|| 12|| 7|| 0|| 181|| 119|| 60|| 122||
 ||FFmpeg_anmr_error7 || 212k|| 8|| 12|| 7|| 0|| 181|| 119|| 60|| 122||
 ||Koimusume no rondo || 160k|| 8|| 12|| 6|| 0|| 183|| 122|| 60|| 121||
 ||Koimusume no rondo || 192k|| 8|| 12|| 3|| 0|| 183|| 121|| 60|| 122||
 ||Koimusume no rondo || 224k|| 8|| 13|| 5|| 0|| 183|| 122|| 60|| 121||
 ||Sphere no hane|| 160k|| 8|| 12|| 6|| 0|| 187|| 126|| 60|| 121||
 wmax : {{{sce->ics.num_windows}}}
 imax : {{{sce->ics.max_sfb}}}
 Sorry that I cannot distribute those last two large files.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/2686#comment:356>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list