[FFmpeg-user] Segfault in mpdecimate filter when using ssse3/mmx extensions
Ed Torbett
ed.torbett at simulation-systems.co.uk
Thu Dec 19 13:08:00 CET 2013
> (This doesn't help because your valgrind version
> is too old.)
Compiled latest valgrind from source; here's the output:
[etorbett at ssl26 samples]$ /usr/local/bin/valgrind /ldisk/ffmpeg/ffmpeg_sources/ffmpeg/ffmpeg_g -i combined.mp4 -vf mpdecimate -f null -
==29272== Memcheck, a memory error detector
==29272== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==29272== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
==29272== Command: /ldisk/ffmpeg/ffmpeg_sources/ffmpeg/ffmpeg_g -i combined.mp4 -vf mpdecimate -f null -
==29272==
ffmpeg version N-41485-gf5d0398 Copyright (c) 2000-2013 the FFmpeg developers
built on Dec 19 2013 10:39:35 with gcc 4.1.2 (GCC) 20080704 (Red Hat 4.1.2-54)
configuration: --enable-gpl --enable-libx264
libavutil 52. 58.101 / 52. 58.101
libavcodec 55. 45.102 / 55. 45.102
libavformat 55. 22.100 / 55. 22.100
libavdevice 55. 5.102 / 55. 5.102
libavfilter 4. 0.100 / 4. 0.100
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'combined.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf55.9.100
Duration: 00:00:50.08, start: 0.000000, bitrate: 451 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x576 [SAR 16:15 DAR 4:3], 450 kb/s, 12.50 fps, 12.50 tbr, 12800 tbn, 25 tbc (default)
Metadata:
handler_name : VideoHandler
Output #0, null, to 'pipe:':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf55.22.100
Stream #0:0(und): Video: rawvideo (I420 / 0x30323449), yuv420p, 720x576 [SAR 16:15 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 12.50 tbc (default)
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> rawvideo)
Press [q] to stop, [?] for help
[null @ 0x44df360] Encoder did not produce proper pts, making some up.
==29272==
==29272== Process terminating with default action of signal 11 (SIGSEGV)
==29272== General Protection Fault
==29272== at 0x87175CC: sum_abs_dctelem_ssse3 (dsputilenc_mmx.c:833)
==29272== by 0x80AF75A: filter_frame (vf_mpdecimate.c:90)
==29272== by 0x80787B1: ff_filter_frame_framed (avfilter.c:1072)
==29272== by 0x8078A3F: ff_filter_frame (avfilter.c:1147)
==29272== by 0x807D38F: request_frame (buffersrc.c:491)
==29272== by 0x807D975: av_buffersrc_add_frame_internal (buffersrc.c:170)
==29272== by 0x807DAD9: av_buffersrc_add_frame_flags (buffersrc.c:107)
==29272== by 0x8063C91: output_packet (ffmpeg.c:1777)
==29272== by 0x8066DB7: transcode_step (ffmpeg.c:3215)
==29272== by 0x8069A9B: transcode (ffmpeg.c:3363)
==29272== by 0x806A994: main (ffmpeg.c:3543)
==29272==
==29272== HEAP SUMMARY:
==29272== in use at exit: 8,884,572 bytes in 552 blocks
==29272== total heap usage: 2,283 allocs, 1,731 frees, 12,526,816 bytes allocated
==29272==
==29272== LEAK SUMMARY:
==29272== definitely lost: 0 bytes in 0 blocks
==29272== indirectly lost: 0 bytes in 0 blocks
==29272== possibly lost: 816 bytes in 6 blocks
==29272== still reachable: 8,883,756 bytes in 546 blocks
==29272== suppressed: 0 bytes in 0 blocks
==29272== Rerun with --leak-check=full to see details of leaked memory
==29272==
==29272== For counts of detected and suppressed errors, rerun with: -v
==29272== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 31 from 8)
Killed
> I suspect this is a compiler problem, can you easily
> test another version?
On other machines, a windows zeranoe build from 8th December works without crash and the build I used originally (with the 'unusual' configure) works when compiled and run on another architecture (8-core Xeon server, which is the target architecture).
I don't think I can get another version on my PC without compiling it myself, which of course defeats the point of seeing if it's my compiler or my machine. I'm running CentOS 5.7 32bit.
More information about the ffmpeg-user
mailing list