Opened 5 years ago

Closed 4 years ago

Last modified 3 years ago

#2654 closed defect (fixed)

calling draw slice callback with NULL data

Reported by: ubitux Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: mpeg2video
Cc: Reimar.Doeffinger@gmx.de Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

avctx->draw_horiz_band seems to be called sometimes with a NULL data pointer. This cause MPlayer to flood stderr with the following message:

% ~/src/mplayer/mplayer ~/samples/matrixbench_mpeg2.mpg
MPlayer SVN-r35924-4.7.2 (C) 2000-2013 MPlayer Team
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing /home/ubitux/samples/matrixbench_mpeg2.mpg.
libavformat version 55.8.102 (internal)
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  11421.6 kbps (1427.7 kbyte/s)
Load subtitles in /home/ubitux/samples/
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 55.15.100 (internal)
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
[VD_FFMPEG] XVMC-accelerated MPEG-2.
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
VO: [gl] 720x576 => 768x576 Planar YV12 
A:   0.3 V:   0.3 A-V:  0.021 ct:  0.006   4/  4 ??% ??% ??,?% 0 0 
[VD_FFMPEG] DRI failure.
A:   1.2 V:   1.2 A-V:  0.002 ct:  0.022  27/ 27  9%  3%  0.3% 0 0 
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
A:  12.3 V:  12.3 A-V:  0.004 ct:  0.020  47/ 47  7%  0%  0.3% 0 0 

See libavcodec/mpegvideo.c:ff_draw_horiz_band() where avctx->draw_horiz_band is called with src->data[0] being NULL.

I don't know which one is right here (FFmpeg or MPlayer), but something should be fixed.

matrixbench_mpeg2.mpg is available here: http://samples.ffmpeg.org/benchmark/testsuite1/matrixbench_mpeg2.mpg

I don't know if this is a regression.

Note @Reimar: I put you in copy since you're likely interested in that issue and might want to comment on it. Feel free to remove yourself from the Cc.

Change History (8)

comment:1 follow-up: Changed 5 years ago by cehoyos

$ mplayer matrixbench_mpeg2.mpg -vo gl
MPlayer SVN-r36298-4.7 (C) 2000-2013 MPlayer Team

Playing matrixbench_mpeg2.mpg.
libavformat version 55.8.102 (internal)
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  11421.6 kbps (1427.7 kbyte/s)
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.15.100 (internal)
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
[VD_FFMPEG] XVMC-accelerated MPEG-2.
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
VO: [gl] 720x576 => 768x576 Planar YV12
A:   0.3 V:   0.3 A-V:  0.021 ct:  0.005   4/  4 ??% ??% ??,?% 0 0
[VD_FFMPEG] DRI failure.
A: 187.8 V: 187.7 A-V:  0.040 ct:  0.032 4690/4690  6%  0%  0.2% 6 0


Exiting... (End of file)

comment:2 Changed 5 years ago by ubitux

For some reason the MPlayer version info was not updated.

% ~/src/mplayer/mplayer ~/samples/matrixbench_mpeg2.mpg
MPlayer SVN-r36305-4.8.1 (C) 2000-2013 MPlayer Team
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing /home/ubitux/samples/matrixbench_mpeg2.mpg.
libavformat version 55.8.102 (internal)
MPEG-PS file format detected.
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  11421.6 kbps (1427.7 kbyte/s)
Load subtitles in /home/ubitux/samples/
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 55.15.100 (internal)
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
[VD_FFMPEG] XVMC-accelerated MPEG-2.
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
VO: [gl] 720x576 => 768x576 Planar YV12 
A:   0.3 V:   0.3 A-V:  0.028 ct:  0.007   4/  4 ??% ??% ??,?% 0 0 
[VD_FFMPEG] DRI failure.
A:   0.9 V:   0.9 A-V:  0.005 ct:  0.020  18/ 18 11%  7%  0.3% 0 0 
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
BUG in FFmpeg, draw_slice called with NULL pointer!
A:  11.9 V:  11.9 A-V:  0.003 ct:  0.022  43/ 43  7%  0%  0.3% 0 0 

comment:3 in reply to: ↑ 1 Changed 5 years ago by ubitux

Replying to cehoyos:

$ mplayer matrixbench_mpeg2.mpg -vo gl
MPlayer SVN-r36298-4.7 (C) 2000-2013 MPlayer Team
[...]

Sorry it seems I forgot to say that you need to seek.

comment:4 follow-up: Changed 5 years ago by cehoyos

Not reproducible with -vo vdpau, definitely a regression.

comment:5 in reply to: ↑ 4 Changed 5 years ago by ubitux

Replying to cehoyos:

Not reproducible with -vo vdpau, definitely a regression.

The message in MPlayer is fairly recent AFAIK, so the regression might have been present (as a crash) previously. If it's a regression in FFmpeg, I would guess it's from around TEP period.

comment:6 Changed 4 years ago by michael

Is this still reproduceable ? if not please close

comment:7 Changed 4 years ago by ubitux

  • Resolution set to fixed
  • Status changed from new to closed

I can't reproduce anymore, so closing.

Any idea what commit might have fixed it?

comment:8 Changed 3 years ago by cehoyos

  • Keywords mpeg2video added; mpegvideo removed
Note: See TracTickets for help on using tickets.