[FFmpeg-trac] #2148(avformat:new): crash reading M3U8 audio file
FFmpeg
trac at avcodec.org
Thu Jan 17 00:14:22 CET 2013
#2148: crash reading M3U8 audio file
-------------------------------------+-------------------------------------
Reporter: saste | Owner:
Type: defect | Status: new
Priority: important | Component: avformat
Version: git- | Keywords: m3u8 hls
master | mov crash
Blocked By: | Blocking:
Reproduced by developer: 1 | Analyzed by developer: 0
-------------------------------------+-------------------------------------
Summary of the bug:
How to reproduce:
{{{
ffmpeg -f lavfi -i "aevalsrc=cos(2*PI*t)*sin(2*PI*(440+4*t)*t)::d=20" -f
segment -segment_time 10 -map 0 -strict -2 -codec:a aac -segment_list
list.m3u8 out-%03d.mp4
}}}
{{{-f lavfi}}} was used to generate the input, but any audio file will do.
The individual mp4 files generated are playable.
Then if you try to read the generated file with ffmpeg -i list.m3u8 it
crashes (same with ffprobe/ffplay):
{{{
ffmpeg -i list.m3u8
ffmpeg version N-48948-gcb9d290 Copyright (c) 2000-2013 the FFmpeg
developers
built on Jan 16 2013 23:24:42 with gcc 4.6 (Ubuntu/Linaro
4.6.3-1ubuntu5)
configuration: --enable-pic --enable-fontconfig --enable-libschroedinger
--enable-libass --enable-version3 --prefix=/home/stefano --enable-libx264
--enable-libfaac --disable-shared --enable-static --enable-debug=3
--enable-pthreads --enable-libvorbis --enable-gpl --enable-nonfree
--enable-libmp3lame --enable-libtheora --enable-gpl --enable-x11grab
--enable-frei0r --enable-libspeex --enable-libcaca --enable-libflite
--enable-libfreetype --enable-libopencv --enable-libopencore-amrnb
--enable-libopencore-amrnb --disable-optimizations --disable-mmx
libavutil 52. 15.100 / 52. 15.100
libavcodec 54. 89.100 / 54. 89.100
libavformat 54. 60.101 / 54. 60.101
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 32.100 / 3. 32.100
libswscale 2. 1.103 / 2. 1.103
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x24173e0] stream 0, offset 0x2c: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x24173e0] Could not find codec parameters for
stream 0 (Audio: mp3 (mp4a / 0x6134706D), 22050 Hz, 2 channels, s16p, 31
kb/s): unspecified frame size
Consider increasing the value for the 'analyzeduration' and 'probesize'
options
*** glibc detected *** ffmpeg: corrupted double-linked list:
0x0000000002455390 ***
}}}
Backtrace:
{{{
#0 0x00007ffff104e425 in __GI_raise (sig=<optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007ffff1051b8b in __GI_abort () at abort.c:91
#2 0x00007ffff108c39e in __libc_message (do_abort=2, fmt=0x7ffff1196008
"*** glibc detected *** %s: %s: 0x%s ***\n") at
../sysdeps/unix/sysv/linux/libc_fatal.c:201
#3 0x00007ffff1096b96 in malloc_printerr (action=3, str=0x7ffff1196118
"double free or corruption (!prev)", ptr=<optimized out>) at malloc.c:5007
#4 0x0000000000d0d970 in av_free (ptr=0x18ae160) at libavutil/mem.c:185
#5 0x0000000000d0d995 in av_freep (arg=0x18970d0) at libavutil/mem.c:192
#6 0x00000000004f1ee8 in avio_close (s=0x18970c8) at
libavformat/aviobuf.c:829
#7 0x0000000000545a59 in mov_read_close (s=0x189c2d0) at
libavformat/mov.c:3075
#8 0x00000000005f4632 in avformat_close_input (ps=0x18971a0) at
libavformat/utils.c:3244
#9 0x0000000000515de0 in free_variant_list (c=0x1896070) at
libavformat/hls.c:137
#10 0x0000000000517e6e in hls_close (s=0x1895ab0) at libavformat/hls.c:709
#11 0x00000000005f4632 in avformat_close_input (ps=0x189de00) at
libavformat/utils.c:3244
#12 0x000000000043e92a in exit_program () at ffmpeg.c:452
#13 0x00007ffff1053901 in __run_exit_handlers (status=1,
listp=0x7ffff13d0688, run_list_atexit=true) at exit.c:78
#14 0x00007ffff1053985 in __GI_exit (status=<optimized out>) at exit.c:100
#15 0x000000000044aef9 in main (argc=3, argv=0x7fffffffe618) at
ffmpeg.c:3235
}}}
exactly in mov_read_close(), when calling avio_close().
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2148>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list