[MPlayer-cvslog] r36418 - in trunk: etc/codecs.conf fmt-conversion.c libmpcodecs/img_format.h libmpcodecs/vd_ffmpeg.c libvo/vo_vdpau.c

Roberto Togni rxt at rtogni.it
Mon Aug 12 21:54:37 CEST 2013


On Sun, 11 Aug 2013 20:28:58 +0200 (CEST)
reimar <subversion at mplayerhq.hu> wrote:

Hi
> 
[...]
> Modified: trunk/libmpcodecs/vd_ffmpeg.c
> ==============================================================================
> --- trunk/libmpcodecs/vd_ffmpeg.c	Sat Aug 10 06:02:17 2013	(r36417)
> +++ trunk/libmpcodecs/vd_ffmpeg.c	Sun Aug 11 20:28:58 2013	(r36418)
> @@ -36,6 +36,10 @@
>  
[...]
> @@ -477,6 +520,10 @@ static void draw_slice(struct AVCodecCon
>          mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "BUG in FFmpeg, draw_slice called with NULL pointer!\n");
>          return;
>      }
> +    if (IMGFMT_IS_VDPAU(mpi->imgfmt)) {
> +        mp_msg(MSGT_DECVIDEO, MSGL_FATAL, "BUG in FFmpeg, draw_slice called for VDPAU!\n");
> +        return;
> +    }
>      if (height < 0)
>      {
>          int i;
[...]

This is crashing with many files, eg. avi with mpeg4 video.

MPlayer SVN-r36418-4.7 (C) 2000-2013 MPlayer Team

Playing GoneNutty.avi.
libavformat version 55.13.102 (internal)
AVI file format detected.
[aviheader] Video stream found, -vid 0
[aviheader] Audio stream found, -aid 1
VIDEO:  [DX50]  640x352  24bpp  25.000 fps  1147.2 kbps (140.0 kbyte/s)
Clip info:
 Software: Nandub v1.0rc2
Load subtitles in ./
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 55.27.100 (internal)
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
==========================================================================
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, floatle, 192.0 kbit/6.25% (ratio: 24000->384000)
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
[AO OSS] audio_setup: Can't open audio device /dev/dsp: No such file or
directory AO: [alsa] 48000Hz 2ch floatle (4 bytes per sample)
Starting playback...
[mpeg4 @ 0x555556332920]Invalid and inefficient vfw-avi packed B frames
detected Movie-Aspect is 1.82:1 - prescaling to correct movie aspect.
VO: [gl] 640x352 => 640x352 Planar YV12 
A:   0.1 V:   0.1 A-V: -0.008 ct: -0.002   3/  3 ??% ??% ??,?% 0 0 
[VD_FFMPEG] DRI failure.
A:   0.1 V:   0.1 A-V: -0.032 ct: -0.006   4/  4 ??% ??% ??,?% 0 0 
Program received signal SIGSEGV, Segmentation fault.
draw_slice (s=<optimized out>, src=0x555556dc3d50, offset=<optimized
out>, y=0, type=<optimized out>, height=16) at libmpcodecs/vd_ffmpeg.c:523
523	    if (IMGFMT_IS_VDPAU(mpi->imgfmt)) {

(gdb) print mpi
$1 = (mp_image_t *) 0x0

(gdb) bt
#0  draw_slice (s=<optimized out>, src=0x555556dc3d50,
offset=<optimized out>, y=0, type=<optimized out>, height=16) at
libmpcodecs/vd_ffmpeg.c:523 #1  0x0000555555b0fc0e in
ff_draw_horiz_band (avctx=0x555556dc23a0, dsp=dsp at entry=0x555556dc4430,
cur=cur at entry=0x555556dc3d50, last=last at entry=0x555556dc2c70, y=0,
h=16, picture_structure=3, first_field=0, draw_edges=1, low_delay=0,
v_edge_pos=352, h_edge_pos=640) at libavcodec/mpegvideo.c:2982
#2  0x0000555555b0fe92 in ff_mpeg_draw_horiz_band
(s=s at entry=0x555556dc2800, y=<optimized out>, h=h at entry=16) at
libavcodec/mpegvideo.c:2990 #3  0x00005555559f3ee5 in decode_slice
(s=s at entry=0x555556dc2800) at libavcodec/h263dec.c:261
#4  0x00005555559f4e30 in ff_h263_decode_frame (avctx=0x555556dc23a0, 
    data=0x555556dc2120, got_frame=0x7fffffffcff4, avpkt=<optimized
out>) at libavcodec/h263dec.c:673
#5  0x0000555555bc2ed0 in avcodec_decode_video2 (
    avctx=avctx at entry=0x555556dc23a0,
picture=picture at entry=0x555556dc2120,
got_picture_ptr=got_picture_ptr at entry=0x7fffffffcff4,
avpkt=avpkt at entry=0x7fffffffd020) at libavcodec/utils.c:1982 #6
0x0000555555813b83 in decode (sh=0x555556a0ee80, data=<optimized out>,
len=8, flags=<optimized out>) at libmpcodecs/vd_ffmpeg.c:900 #7
0x0000555555746ff0 in decode_video
( sh_video=sh_video at entry=0x555556a0ee80, start=0x555556f80f20 "",
in_size=in_size at entry=8, drop_frame=drop_frame at entry=0, ---Type
<return> to continue, or q <return> to quit--- pts=<optimized out>,
full_frame=full_frame at entry=0x7fffffffd17c) at
libmpcodecs/dec_video.c:398 #8  0x00005555556baead in update_video (
    blit_frame=blit_frame at entry=0x7fffffffd274) at mplayer.c:2473
#9  0x00005555556ae13b in main (argc=2, argv=0x7fffffffe3b8) at
mplayer.c:3782


Reverting this fixes it (I tried only reverting vd_ffmeg.c part, not
all of them).

Ciao,
 Roberto


More information about the MPlayer-cvslog mailing list