[FFmpeg-trac] #3380(swresample:open): swresample segfault with 10-channel amerge+pan
FFmpeg
trac at avcodec.org
Tue Feb 11 15:38:22 CET 2014
#3380: swresample segfault with 10-channel amerge+pan
------------------------------------+--------------------------------------
Reporter: MarkZV | Owner:
Type: defect | Status: open
Priority: important | Component: swresample
Version: git-master | Resolution:
Keywords: crash | Blocked By:
Blocking: | Reproduced by developer: 1
Analyzed by developer: 0 |
------------------------------------+--------------------------------------
Comment (by cehoyos):
{{{
$ cp fate-suite/audio-reference/luckynight_2ch_44kHz_s16.wav in.wav
$ valgrind ./ffmpeg_g -i in.wav -i in.wav -i in.wav -i in.wav -i in.wav
-filter_complex 'amerge=inputs=5,pan=stereo|FL=0.5*c0+0.2*c2+0.1*c8|FR=c9'
-acodec ac3 -f null -
==13549== Memcheck, a memory error detector
==13549== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==13549== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright
info
==13549== Command: ./ffmpeg_g -i in.wav -i in.wav -i in.wav -i in.wav -i
in.wav -filter_complex
amerge=inputs=5,pan=stereo|FL=0.5*c0+0.2*c2+0.1*c8|FR=c9 -acodec ac3 -f
null -
==13549==
ffmpeg version N-60530-g6c12b1d Copyright (c) 2000-2014 the FFmpeg
developers
built on Feb 11 2014 14:27:58 with gcc 4.7 (SUSE Linux)
configuration: --enable-gpl
libavutil 52. 63.101 / 52. 63.101
libavcodec 55. 50.100 / 55. 50.100
libavformat 55. 31.100 / 55. 31.100
libavdevice 55. 8.100 / 55. 8.100
libavfilter 4. 1.102 / 4. 1.102
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from 'in.wav':
Duration: 00:00:09.50, bitrate: 1411 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz,
stereo, s16, 1411 kb/s
Guessed Channel Layout for Input Stream #1.0 : stereo
Input #1, wav, from 'in.wav':
Duration: 00:00:09.50, bitrate: 1411 kb/s
Stream #1:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz,
stereo, s16, 1411 kb/s
Guessed Channel Layout for Input Stream #2.0 : stereo
Input #2, wav, from 'in.wav':
Duration: 00:00:09.50, bitrate: 1411 kb/s
Stream #2:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz,
stereo, s16, 1411 kb/s
Guessed Channel Layout for Input Stream #3.0 : stereo
Input #3, wav, from 'in.wav':
Duration: 00:00:09.50, bitrate: 1411 kb/s
Stream #3:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz,
stereo, s16, 1411 kb/s
Guessed Channel Layout for Input Stream #4.0 : stereo
Input #4, wav, from 'in.wav':
Duration: 00:00:09.50, bitrate: 1411 kb/s
Stream #4:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz,
stereo, s16, 1411 kb/s
[Parsed_amerge_0 @ 0x7b40320] No channel layout for input 1
[Parsed_amerge_0 @ 0x7b40320] Input channel layouts overlap: output layout
will be determined by the number of distinct input channels
Output #0, null, to 'pipe:':
Metadata:
encoder : Lavf55.31.100
Stream #0:0: Audio: ac3, 44100 Hz, stereo, fltp, 192 kb/s (default)
Stream mapping:
Stream #0:0 (pcm_s16le) -> amerge:in0
Stream #1:0 (pcm_s16le) -> amerge:in1
Stream #2:0 (pcm_s16le) -> amerge:in2
Stream #3:0 (pcm_s16le) -> amerge:in3
Stream #4:0 (pcm_s16le) -> amerge:in4
pan -> Stream #0:0 (ac3)
Press [q] to stop, [?] for help
==13549== Invalid read of size 4
==13549== at 0xCAB257: swri_rematrix (rematrix.c:474)
==13549== by 0xCAC257: swr_convert_internal.part.3 (swresample.c:681)
==13549== by 0xCACFCA: swr_convert (swresample.c:523)
==13549== by 0x4EC7C3: filter_frame (af_pan.c:373)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== by 0x4E4D02: filter_frame (af_aresample.c:215)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== by 0x4E288F: filter_frame (af_amerge.c:303)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== Address 0x1080 is not stack'd, malloc'd or (recently) free'd
==13549==
==13549==
==13549== Process terminating with default action of signal 11 (SIGSEGV)
==13549== Access not within mapped region at address 0x1080
==13549== at 0xCAB257: swri_rematrix (rematrix.c:474)
==13549== by 0xCAC257: swr_convert_internal.part.3 (swresample.c:681)
==13549== by 0xCACFCA: swr_convert (swresample.c:523)
==13549== by 0x4EC7C3: filter_frame (af_pan.c:373)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== by 0x4E4D02: filter_frame (af_aresample.c:215)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== by 0x4E288F: filter_frame (af_amerge.c:303)
==13549== by 0x48D129: ff_filter_frame_framed (avfilter.c:1081)
==13549== by 0x48E228: ff_filter_frame (avfilter.c:1161)
==13549== If you believe this happened as a result of a stack
==13549== overflow in your program's main thread (unlikely but
==13549== possible), you can try to increase the size of the
==13549== main thread stack using the --main-stacksize= flag.
==13549== The main thread stack size used in this run was 8388608.
==13549==
==13549== HEAP SUMMARY:
==13549== in use at exit: 5,358,575 bytes in 4,748 blocks
==13549== total heap usage: 7,189 allocs, 2,441 frees, 7,141,529 bytes
allocated
==13549==
==13549== LEAK SUMMARY:
==13549== definitely lost: 0 bytes in 0 blocks
==13549== indirectly lost: 0 bytes in 0 blocks
==13549== possibly lost: 3,808 bytes in 14 blocks
==13549== still reachable: 5,354,767 bytes in 4,734 blocks
==13549== suppressed: 0 bytes in 0 blocks
==13549== Rerun with --leak-check=full to see details of leaked memory
==13549==
==13549== For counts of detected and suppressed errors, rerun with: -v
==13549== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 2 from 2)
Killed
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/3380#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list