# HG changeset patch # User cehoyos # Date 1257348613 0 # Node ID 508417d485d61898ec7c3ec645f1977a5ca851ea # Parent 816c1f02ebfea194a6223be7bd0796dd901cb11b Add new VDPAU feature high-quality-scaling (and require newer library). diff -r 816c1f02ebfe -r 508417d485d6 DOCS/man/en/mplayer.1 --- a/DOCS/man/en/mplayer.1 Wed Nov 04 00:58:11 2009 +0000 +++ b/DOCS/man/en/mplayer.1 Wed Nov 04 15:30:13 2009 +0000 @@ -3511,6 +3511,13 @@ .IPs 3 Use SMPTE-240M color space. .RE +.IPs hqscaling +.RSss +.IPs 0 +Use default VDPAU scaling (default). +.IPs 1\-9 +Apply high quality VDPAU scaling (needs capable hardware). +.RE .IPs force\-mixer Forces the use of the VDPAU mixer, which implements all above options (default). Use noforce\-mixer to allow displaying BGRA colorspace. diff -r 816c1f02ebfe -r 508417d485d6 configure --- a/configure Wed Nov 04 00:58:11 2009 +0000 +++ b/configure Wed Nov 04 15:30:13 2009 +0000 @@ -4339,7 +4339,7 @@ if test "$_dl" = yes ; then cat > $TMPC < -int main(void) {return VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE;} +int main(void) {return VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L1;} EOF cc_check && _vdpau=yes fi diff -r 816c1f02ebfe -r 508417d485d6 libvo/vo_vdpau.c --- a/libvo/vo_vdpau.c Wed Nov 04 00:58:11 2009 +0000 +++ b/libvo/vo_vdpau.c Wed Nov 04 15:30:13 2009 +0000 @@ -165,6 +165,7 @@ static int force_mixer; static int top_field_first; static int flip; +static int hqscaling; static VdpDecoder decoder; static int decoder_max_refs; @@ -461,7 +462,7 @@ static int create_vdp_mixer(VdpChromaType vdp_chroma_type) { #define VDP_NUM_MIXER_PARAMETER 3 -#define MAX_NUM_FEATURES 5 +#define MAX_NUM_FEATURES 6 int i; VdpStatus vdp_st; int feature_count = 0; @@ -493,6 +494,8 @@ features[feature_count++] = VDP_VIDEO_MIXER_FEATURE_NOISE_REDUCTION; if (sharpen) features[feature_count++] = VDP_VIDEO_MIXER_FEATURE_SHARPNESS; + if (hqscaling) + features[feature_count++] = VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L1 + (hqscaling - 1); vdp_st = vdp_video_mixer_create(vdp_device, feature_count, features, VDP_NUM_MIXER_PARAMETER, @@ -1181,6 +1184,7 @@ {"sharpen", OPT_ARG_FLOAT, &sharpen, NULL}, {"colorspace", OPT_ARG_INT, &colorspace, NULL}, {"force-mixer", OPT_ARG_BOOL, &force_mixer, NULL}, + {"hqscaling", OPT_ARG_INT, &hqscaling, (opt_test_f)int_non_neg}, {NULL} }; @@ -1208,6 +1212,9 @@ " 1: ITU-R BT.601 (default)\n" " 2: ITU-R BT.709\n" " 3: SMPTE-240M\n" + " hqscaling\n" + " 0: default VDPAU scaler\n" + " 1-9: high quality VDPAU scaler (needs capable hardware)\n" " force-mixer\n" " Use the VDPAU mixer (default)\n" " Use noforce-mixer to allow BGRA output (disables all above options)\n" @@ -1230,6 +1237,7 @@ sharpen = 0; colorspace = 1; force_mixer = 1; + hqscaling = 0; if (subopt_parse(arg, subopts) != 0) { mp_msg(MSGT_VO, MSGL_FATAL, help_msg); return -1;