[MPlayer-dev-eng] [PATCH]Fix decoding with -vc ffvc1vdpau

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Thu Feb 26 09:26:56 CET 2009


On Thu, Feb 26, 2009 at 01:58:32AM +0100, Carl Eugen Hoyos wrote:
> Attached patch fixes decoding with -vc ffvc1vdpau and -vc ffwmv3vdpau
>
> Please comment, Carl Eugen

> Index: libmpcodecs/vd_ffmpeg.c
> ===================================================================
> --- libmpcodecs/vd_ffmpeg.c	(revision 28734)
> +++ libmpcodecs/vd_ffmpeg.c	(working copy)
> @@ -916,7 +916,7 @@
>          avctx->draw_horiz_band = draw_slice;
>          mp_msg(MSGT_DECVIDEO, MSGL_INFO, MSGTR_MPCODECS_XVMCAcceleratedMPEG2);
>          assert(ctx->do_dr1);//these are must to!
> -        assert(ctx->do_slices); //it is (vo_)ffmpeg bug if this fails
> +        assert(!IMGFMT_IS_XVMC(imgfmt) || ctx->do_slices);
>          avctx->slice_flags=SLICE_FLAG_CODED_ORDER|SLICE_FLAG_ALLOW_FIELD;

It's not correct though, if slices are not used, VDPAU will not work
either. The question is why do_slices is not (yet?) set.
Alternatively, the assert could probably be moved somewhere else, like get_buffer,
it is not really necessary to have it set here already I think.



More information about the MPlayer-dev-eng mailing list