[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#947211: Regression in libsoxr0 0.1.3-2 makes ffmpeg segfault



Package: libsoxr0
Version: 0.1.3-2
Control: fixed -1 0.1.3-1

Steps to reproduce:

$ sox -n -r 44100 test.wav synth 1 sine 1000
$ ffmpeg -i test.wav -filter:a "aresample=48000:resampler=soxr" testout.wav
ffmpeg version 4.2.1-2 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Debian 9.2.1-15)
  configuration: --prefix=/usr --extra-version=2 --toolchain=hardened
--libdir=/usr/lib/x86_64-linux-gnu
--incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl
--disable-stripping --enable-avresample --disable-filter=resample
--enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom
--enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca
--enable-libcdio --enable-libcodec2 --enable-libflite
--enable-libfontconfig --enable-libfreetype --enable-libfribidi
--enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame
--enable-libmysofa --enable-libopenjpeg --enable-libopenmpt
--enable-libopus --enable-libpulse --enable-librsvg
--enable-librubberband --enable-libshine --enable-libsnappy
--enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora
--enable-libtwolame --enable-libvidstab --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265
--enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi
--enable-lv2 --enable-omx --enable-openal --enable-opengl
--enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883
--enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Input #0, wav, from 'test.wav':
  Duration: 00:00:01.00, bitrate: 1411 kb/s
    Stream #0:0: Audio: pcm_s32le ([1][0][0][0] / 0x0001), 44100 Hz,
mono, s32, 1411 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (pcm_s32le (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Segmentation fault (core dumped)

Stack trace:
Thread 1 "ffmpeg" received signal SIGSEGV, Segmentation fault.
__memmove_avx_unaligned_erms () at
../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:416
416     ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S: No
such file or directory.
(gdb) bt
#0  __memmove_avx_unaligned_erms () at
../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:416
#1  0x00007ffff06c6dcd in memcpy (__len=3556, __src=<optimized out>,
__dest=0x0) at /usr/include/x86_64-linux-gnu/bits/string_fortified.h:34
#2  _soxr_interleave_f (data_type=<optimized out>,
dest0=0x5555556386c0, src=<optimized out>, n=889, ch=1,
seed=0x555555635e00) at ./src/data-io.c:204
#3  0x00007ffff06c260f in soxr_output_1ch (p=p@entry=0x555555635ce0,
i=i@entry=0, dest=dest@entry=0x7fffffffd1a0, len=<optimized out>,
len@entry=1146, separated=separated@entry=true)
    at ./src/soxr.c:664
#4  0x00007ffff06c3e71 in soxr_process (p=p@entry=0x555555635ce0,
in=in@entry=0x7fffffffcf80, ilen0=<optimized out>, ilen0@entry=1024,
idone0=idone0@entry=0x7fffffffcee8,
    out=out@entry=0x7fffffffd1a0, olen=olen@entry=1146,
odone0=0x7fffffffcef0) at ./src/soxr.c:794
#5  0x00007ffff63bdba3 in process (c=0x555555635ce0,
dst=0x7fffffffd1a0, dst_size=1146, src=0x7fffffffcf80, src_size=1024,
consumed=0x7fffffffcf7c) at src/libswresample/soxr_resample.c:90
#6  0x00007ffff63be5b3 in resample (s=s@entry=0x55555561d900,
out_param=out_param@entry=0x7fffffffd870,
out_count=out_count@entry=1146,
in_param=in_param@entry=0x5555556208d0,
    in_count=in_count@entry=1024) at src/libswresample/swresample.c:537
#7  0x00007ffff63bef3e in swr_convert_internal
(s=s@entry=0x55555561d900, out=out@entry=0x555555620f30,
out_count=out_count@entry=1146, in=in@entry=0x5555556206b0,
in_count=in_count@entry=1024)
    at src/libswresample/swresample.c:646
#8  0x00007ffff63bfa8c in swr_convert_internal (in_count=1024,
in=0x5555556206b0, out_count=1146, out=0x555555620f30,
s=0x55555561d900) at src/libswresample/swresample.c:589
#9  swr_convert (s=0x55555561d900, out_arg=0x555555636440,
out_count=out_count@entry=1146, in_arg=<optimized out>,
in_count=<optimized out>, in_count@entry=1024) at
src/libswresample/swresample.c:766
#10 0x00007ffff7ccd67f in filter_frame
(inlink=inlink@entry=0x5555556333c0, insamplesref=<optimized out>) at
src/libavfilter/af_aresample.c:217
#11 0x00007ffff7d238ad in ff_filter_frame_framed (frame=<optimized
out>, link=0x5555556333c0) at src/libavfilter/avfilter.c:1071
#12 ff_filter_frame_to_filter (link=0x5555556333c0) at
src/libavfilter/avfilter.c:1219
#13 ff_filter_activate_default (filter=<optimized out>) at
src/libavfilter/avfilter.c:1268
#14 ff_filter_activate (filter=<optimized out>) at
src/libavfilter/avfilter.c:1430
#15 0x00007ffff7d26a7b in ff_filter_graph_run_once
(graph=graph@entry=0x555555619e40) at
src/libavfilter/avfiltergraph.c:1454
#16 0x00007ffff7d286f8 in push_frame (graph=0x555555619e40) at
src/libavfilter/buffersrc.c:187
#17 av_buffersrc_add_frame_internal (ctx=ctx@entry=0x55555561d400,
frame=frame@entry=0x5555556130c0, flags=flags@entry=4) at
src/libavfilter/buffersrc.c:261
#18 0x00007ffff7d28b46 in av_buffersrc_add_frame_flags
(ctx=0x55555561d400, frame=0x5555556130c0, flags=4) at
src/libavfilter/buffersrc.c:170
#19 0x000055555557f773 in ifilter_send_frame (frame=0x5555556130c0,
ifilter=0x555555618380) at src/fftools/ffmpeg.c:2196
#20 send_frame_to_filters (ist=0x555555615f80,
decoded_frame=0x5555556130c0) at src/fftools/ffmpeg.c:2270
#21 0x0000555555580579 in decode_audio (decode_failed=<synthetic
pointer>, got_output=0x7fffffffe02c, pkt=0x7fffffffe050,
ist=0x555555615f80) at src/fftools/ffmpeg.c:2337
#22 process_input_packet (ist=<optimized out>, pkt=0x7fffffffe270,
no_eof=0) at src/fftools/ffmpeg.c:2619
#23 0x00005555555830eb in process_input (file_index=<optimized out>)
at src/fftools/ffmpeg.c:4518
#24 transcode_step () at src/fftools/ffmpeg.c:4638
#25 transcode () at src/fftools/ffmpeg.c:4692
#26 0x00005555555607de in main (argc=6, argv=0x7fffffffe9f8) at
src/fftools/ffmpeg.c:4894

If ":resampler=soxr" is removed, everything is fine.

Package versions of all binaries in the above stack trace:
libsoxr0 0.1.3-2
libswresample3 7:4.2.1-2
libavfilter7 7:4.2.1-2
ffmpeg 7:4.2.1-2

If I downgrade libsoxr0 to 0.1.3-1, I am unable to reproduce. If I
downgrade ffmpeg to 7:4.1.4-1+b2, but keep libsoxr0 at 0.1.3-2, I can
still reproduce.


Reply to: