Mercurial > mplayer.hg
diff dec_video.c @ 2184:966ec115c87f
integrated new postproc code
author | arpi |
---|---|
date | Sat, 13 Oct 2001 15:33:13 +0000 |
parents | fbf7ce9401ff |
children | ac517956d9b0 |
line wrap: on
line diff
--- a/dec_video.c Sat Oct 13 13:47:44 2001 +0000 +++ b/dec_video.c Sat Oct 13 15:33:13 2001 +0000 @@ -43,6 +43,8 @@ #include "libmpeg2/mpeg2.h" #include "libmpeg2/mpeg2_internal.h" +#include "postproc/postprocess.h" + extern picture_t *picture; // exported from libmpeg2/decode.c @@ -98,7 +100,7 @@ #ifdef USE_WIN32DLL case VFM_VFW: case VFM_VFWEX: - return 6; + return 9; // for Divx.dll (divx4) #endif #ifdef USE_DIRECTSHOW case VFM_DSHOW: @@ -106,10 +108,15 @@ #endif #ifdef MPEG12_POSTPROC case VFM_MPEG: + return GET_PP_QUALITY_MAX; #endif case VFM_DIVX4: case VFM_ODIVX: - return 6; +#ifdef NEW_DECORE + return 9; // for divx4linux +#else + return GET_PP_QUALITY_MAX; // for opendivx +#endif } return 0; } @@ -131,16 +138,21 @@ #endif #ifdef MPEG12_POSTPROC case VFM_MPEG: { - if(quality<0 || quality>6) quality=6; - picture->pp_options=(1<<quality)-1; + if(quality<0 || quality>GET_PP_QUALITY_MAX) quality=GET_PP_QUALITY_MAX; + picture->pp_options=getPpModeForQuality(quality); } break; #endif case VFM_DIVX4: case VFM_ODIVX: { DEC_SET dec_set; - if(quality<0 || quality>6) quality=6; - dec_set.postproc_level=(1<<quality)-1; +#ifdef NEW_DECORE + if(quality<0 || quality>9) quality=9; + dec_set.postproc_level=quality*10; +#else + if(quality<0 || quality>GET_PP_QUALITY_MAX) quality=GET_PP_QUALITY_MAX; + dec_set.postproc_level=getPpModeForQuality(quality); +#endif decore(0x123,DEC_OPT_SETPP,&dec_set,NULL); } break;