[MPlayer-users] MPEG/DVD crashing when taking screenshot

Roberto Togni rxt at rtogni.it
Mon Sep 14 20:59:46 CEST 2015


On Sun, 13 Sep 2015 00:26:42 -0400
Josh <joshf87 at live.com> wrote:

> I compiled r37524 with a newer FFmpeg and got different but still 
> seemingly useless results from gdb so I ran Dr Memory, both logs are 
> included in the tar.xz. The logs themselves will get me queued for 
> moderation for being too big:
> 
> http://sourceforge.net/projects/mplayerwin/files/Misc/mpl-bin-r37524-debug-2.tar.xz/download

Hi,
 just to keep you updated, I was able to reproduce it with your sample
 and get a valid backtrace on linux.

...
sending VFCTRL_SCREENSHOT!

Program received signal SIGSEGV, Segmentation fault.
0x0000555555f68625 in yuv2rgb_X_c_template (hasAlpha=0, 
    target=AV_PIX_FMT_RGB24, y=13, dstW=2386, dest=0x555558be4680 "", 
    alpSrc=0x0, chrFilterSize=4, chrVSrc=0x5555572d9a48, 
    chrUSrc=0x55555711f128, chrFilter=0x5555572d76c8, lumFilterSize=1, 
    lumSrc=0x55555712c5e8, lumFilter=0x55555711e8ba, c=<optimized out>)
    at libswscale/output.c:1340
1340	            Y1 += lumSrc[j][i * 2]     * lumFilter[j];
(gdb) bt
#0  0x0000555555f68625 in yuv2rgb_X_c_template (hasAlpha=0, 
    target=AV_PIX_FMT_RGB24, y=13, dstW=2386, dest=0x555558be4680 "", 
    alpSrc=0x0, chrFilterSize=4, chrVSrc=0x5555572d9a48, 
    chrUSrc=0x55555711f128, chrFilter=0x5555572d76c8, lumFilterSize=1, 
    lumSrc=0x55555712c5e8, lumFilter=0x55555711e8ba, c=<optimized out>)
    at libswscale/output.c:1340
#1  yuv2rgb24_X_c (c=0x555557223520, lumFilter=0x55555711e8ba, 
    lumSrc=0x55555712c5e8, lumFilterSize=1, chrFilter=0x5555572d76c8, 
    chrUSrc=0x55555711f128, chrVSrc=0x5555572d9a48, chrFilterSize=4, 
    alpSrc=0x0, dest=0x555558be4680 "", dstW=2386, y=13)
    at libswscale/output.c:1515
#2  0x0000555555f4dc9e in packed_vscale (c=<optimized out>, 
    desc=<optimized out>, sliceY=13, sliceH=<optimized out>)
    at libswscale/vscale.c:129
#3  0x0000555555f3dc81 in swscale (c=0x5555572b12c0,
src=0x55555711e8a0, srcStride=0x1000, srcSliceY=1460470520,
srcSliceH=1460470480, dst=0x55555711f128, dstStride=0x7fffffffca80) at
libswscale/swscale.c:682 #4  0x0000555555f3ef4b in sws_scale
(c=0x5555572b12c0, srcSlice=0x7fffffffca90, srcStride=0x55555712c5e8,
srcSliceY=1, srcSliceH=1462597320, dst=0x7fffffffcab0,
dstStride=0x5555570f4c60) at libswscale/swscale.c:1263
#5  0x00005555558295da in draw_slice (vf=0x5555570f53b0,
src=0x7fffffffcb90, stride=0x7fffffffcb80, w=1920, h=16, x=1460791456,
y=16)
    at libmpcodecs/vf_screenshot.c:64
#6  0x0000555555826021 in draw_slice (s=<optimized out>, src=<optimized
out>, offset=<optimized out>, y=<optimized out>, type=<optimized out>, 
    height=<optimized out>) at libmpcodecs/vd_ffmpeg.c:588
#7  0x0000555555eb48e4 in ff_draw_horiz_band (avctx=0x5555570f69a0, 
    cur=<optimized out>, last=<optimized out>, y=16, h=16, 
    picture_structure=3, first_field=0, low_delay=0)
    at libavcodec/mpegutils.c:77
#8  0x0000555555b95135 in ff_mpeg_draw_horiz_band
(s=s at entry=0x5555570f6e40, y=<optimized out>, h=<optimized out>) at
libavcodec/mpegvideo.c:2720 #9  0x0000555555b60db5 in mpeg_decode_slice
(s=s at entry=0x5555570f6e40, mb_y=mb_y at entry=1,
buf=buf at entry=0x7fffffffcdd8, buf_size=buf_size at entry=2077) at
libavcodec/mpeg12dec.c:1927 #10 0x0000555555b63b35 in decode_chunks
(avctx=avctx at entry=0x5555570f69a0,
picture=picture at entry=0x5555570f6760,
got_output=got_output at entry=0x7fffffffcf60, buf=0x555556f088c0 "",
buf_size=2111) at libavcodec/mpeg12dec.c:2759 #11 0x0000555555b645ab in
mpeg_decode_frame (avctx=0x5555570f69a0, data=0x5555570f6760,
got_output=0x7fffffffcf60, avpkt=<optimized out>) at
libavcodec/mpeg12dec.c:2836 #12 0x0000555555c6762e in
avcodec_decode_video2 (avctx=0x5555570f69a0, picture=0x5555570f6760,
got_picture_ptr=0x7fffffffcf60, avpkt=0x7fffffffcf90) at
libavcodec/utils.c:2096 ---Type <return> to continue, or q <return> to
quit--- #13 0x0000555555826e5f in decode (sh=0x555556edc410,
data=0x1000, len=1460848104, flags=-12400) at
libmpcodecs/vd_ffmpeg.c:949 #14 0x0000555555775f4f in decode_video
(sh_video=0x555556edc410, start=0x555556f088c0 "", in_size=2111,
drop_frame=0, pts=1.083922266960144, full_frame=0x7fffffffd0b0)
    at libmpcodecs/dec_video.c:398
#15 0x00005555556dd772 in update_video (blit_frame=0x7fffffffd158)
    at mplayer.c:2484
#16 0x00005555556d0980 in main (argc=5, argv=0x7fffffffe288) at
mplayer.c:3811


You're probably right with the commit that broke it, I'm checking if
swscale needs to be called differently now.


Ciao,
 Roberto


More information about the MPlayer-users mailing list