[Mplayer-cvslog] CVS: main/libmpcodecs vd_ffmpeg.c,1.104,1.105
Roberto Togni
r_togni at tiscali.it
Wed Oct 22 00:26:26 CEST 2003
On 2003.10.09 23:22, Michael Niedermayer CVS wrote:
> Update of /cvsroot/mplayer/main/libmpcodecs
> In directory mail:/var/tmp.root/cvs-serv31768
>
> Modified Files:
> vd_ffmpeg.c
> Log Message:
> YUV422P dr1 fix
>
>
> Index: vd_ffmpeg.c
> ===================================================================
> RCS file: /cvsroot/mplayer/main/libmpcodecs/vd_ffmpeg.c,v
> retrieving revision 1.104
> retrieving revision 1.105
> diff -u -r1.104 -r1.105
> --- vd_ffmpeg.c 4 Oct 2003 17:28:59 -0000 1.104
> +++ vd_ffmpeg.c 9 Oct 2003 21:21:46 -0000 1.105
> @@ -128,7 +128,7 @@
> case IMGFMT_I420:
> // "converted" using pointer/stride modification
> if(avctx->pix_fmt==PIX_FMT_YUV420P) return
> CONTROL_TRUE;// u/v swap
> - if(avctx->pix_fmt==PIX_FMT_YUV422P) return
> CONTROL_TRUE;// half stride
> + if(avctx->pix_fmt==PIX_FMT_YUV422P && !ctx->do_dr1)
> return CONTROL_TRUE;// half stride
> break;
> #ifdef HAVE_XVMC
> case IMGFMT_XVMC_IDCT_MPEG2:
> @@ -170,9 +170,6 @@
>
> if(lavc_codec->capabilities&CODEC_CAP_DR1)
> ctx->do_dr1=1;
> - //XXX:FIXME:HACK:UGLY 422P with direct rendering is buggy cuz of
> that chroma stride trick ...
> - if(sh->format == mmioFOURCC('H','F','Y','U'))
> - ctx->do_dr1=0;
> ctx->b_age= ctx->ip_age[0]= ctx->ip_age[1]= 256*256*256*64;
> ctx->ip_count= ctx->b_count= 0;
>
> @@ -416,6 +413,7 @@
> default:
> ctx->best_csp=0;
> }
> +
> if (!mpcodecs_config_vo(sh,sh->disp_w,sh->disp_h,
> ctx->best_csp))
> return -1;
> }
>
> _______________________________________________
> Mplayer-cvslog mailing list
> Mplayer-cvslog at mplayerhq.hu
> http://mplayerhq.hu/mailman/listinfo/mplayer-cvslog
>
Looks like this commit broke huffyuv support (it fixed RGB interlaced,
it segfault with YUV).
- After this commit: RGB ok; YUV segfaults in swscaler (works with -sws
0)
- Reversing this commit: RGB wrong colors if interlaced (width
288) (see huffyuv_decoding_problem.tat.bz2 in incoming), else ok;
YUV luma ok, chroma wrong
- Applying the //XXX FIXMe part only (removing the if): RGB ok; YUV
luma ok, chroma wrong
If you can't reproduce please let me know.
Ciao,
Roberto
More information about the MPlayer-cvslog
mailing list