Opened 5 years ago

Closed 3 years ago

#8192 closed defect (fixed)

Division by zero bug from libavcodec/aacenc.c:903

Reported by: Suhwan Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: ubsan
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
There is a Division by zero bug from libavcodec/aacenc.c:903

libavcodec/aacenc.c:903:62: runtime error: division by zero
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior libavcodec/aacenc.c:903:62 in 
[aac @ 0x619000004180] Qavg: -nan
905	    ff_mdct_end(&s->mdct1024);
(gdb) bt
#0  aac_encode_end (avctx=0x619000004180) at libavcodec/aacenc.c:905
#1  0x000000000509f9fa in avcodec_close (avctx=<optimized out>) at libavcodec/utils.c:1100
#2  0x00000000045d4688 in avcodec_free_context (pavctx=0x6160000045e0) at libavcodec/options.c:178
#3  0x00000000005df0e8 in ffmpeg_cleanup (ret=0) at fftools/ffmpeg.c:571
#4  0x00000000005afb95 in exit_program (ret=0) at fftools/cmdutils.c:139
#5  0x00000000005db973 in main (argc=<optimized out>, argv=<optimized out>) at fftools/ffmpeg.c:4911

How to reproduce:

% ./ffmpeg_g -y -r 106 -i mjpegb.mov -loglevel 0 -map 0 -c:v:117 mov_text -disposition:a:151 aptx -vframes 12 -aframes 23 -ab 418k -ar 22050 -strict 1 tmp.mov

ffmpeg version N-94982-gea673a0edb Copyright (c) 2000-2019 the FFmpeg developers
  built with clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
  configuration: --cc=clang --cxx=clang++ --ld=clang --enable-debug --toolchain=clang-usan

Attachments (2)

gdb-aacenc (60.1 KB ) - added by Suhwan 5 years ago.
mjpegb.mov (863.7 KB ) - added by Suhwan 5 years ago.
poc

Download all attachments as: .zip

Change History (3)

by Suhwan, 5 years ago

Attachment: gdb-aacenc added

by Suhwan, 5 years ago

Attachment: mjpegb.mov added

poc

comment:1 by Michael Niedermayer, 3 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.