summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorgpoirier <gpoirier@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-06-04 20:54:49 +0000
committergpoirier <gpoirier@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-06-04 20:54:49 +0000
commit0836c5a89947b9aca68f5b9a7e38c6ea845cb0a4 (patch)
tree5cfd938340fe051948ed45ef63e2826fe66ac054 /libmpcodecs
parent3815bd0be417b56f30f6179a7c9b0140e56b34bb (diff)
downloadmpv-0836c5a89947b9aca68f5b9a7e38c6ea845cb0a4.tar.bz2
mpv-0836c5a89947b9aca68f5b9a7e38c6ea845cb0a4.tar.xz
Add XviD's luminance masking (option name: lumi_mask)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15639 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/ve_xvid4.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libmpcodecs/ve_xvid4.c b/libmpcodecs/ve_xvid4.c
index 3a60e2202a..ccd21d7e39 100644
--- a/libmpcodecs/ve_xvid4.c
+++ b/libmpcodecs/ve_xvid4.c
@@ -169,6 +169,7 @@ static int xvidenc_stats = 0;
static int xvidenc_max_key_interval = 0; /* Let xvidcore set a 10s interval by default */
static int xvidenc_frame_drop_ratio = 0;
static int xvidenc_greyscale = 0;
+static int xvidenc_luminance_masking = 0;
static int xvidenc_debug = 0;
static int xvidenc_psnr = 0;
@@ -245,6 +246,8 @@ m_option_t xvidencopts_conf[] =
{"max_key_interval", &xvidenc_max_key_interval, CONF_TYPE_INT, CONF_MIN, 0, 0, NULL},
{"greyscale", &xvidenc_greyscale, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"nogreyscale", &xvidenc_greyscale, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+ {"lumi_mask", &xvidenc_luminance_masking, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+ {"nolumi_mask", &xvidenc_luminance_masking, CONF_TYPE_FLAG, 0, 1, 0, NULL},
{"turbo", &xvidenc_turbo, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"debug", &xvidenc_debug, CONF_TYPE_INT , 0 ,0,-1,NULL},
{"stats", &xvidenc_stats, CONF_TYPE_FLAG, 0, 0, 1, NULL},
@@ -1049,6 +1052,13 @@ static int set_create_struct(xvid_mplayer_module_t *mod)
create->num_plugins++;
doZones = 1;
}
+
+ if (xvidenc_luminance_masking) {
+ create->plugins[create->num_plugins].func = xvid_plugin_lumimasking;
+ create->plugins[create->num_plugins].param = NULL;
+ create->num_plugins++;
+ }
+
// parse zones
if (xvidenc_zones != NULL && doZones > 0) // do not apply zones in CQ, and first pass mode (xvid vfw doesn't allow them in those modes either)
{