changeset 18626:2e2b8f34a69e

make spatial interlacing check optional
author michael
date Wed, 07 Jun 2006 17:21:45 +0000
parents dea3a68e2589
children 60c6e95bf54d
files DOCS/man/en/mplayer.1 libmpcodecs/vf_yadif.c
diffstat 2 files changed, 5 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/man/en/mplayer.1	Wed Jun 07 16:46:52 2006 +0000
+++ b/DOCS/man/en/mplayer.1	Wed Jun 07 17:21:45 2006 +0000
@@ -5906,7 +5906,8 @@
 .PD 0
 .RSs
 .IPs <mode>
-0 (output 1 frame for each frame), 1 (output 1 frame for each field)
+0 (output 1 frame for each frame), 1 (output 1 frame for each field), 
+2 (like 0 but skip spatial interlacing check), 3 (like 1 but skip spatial interlacing check)
 .IPs <field_dominance>
 like tfields
 .RE
--- a/libmpcodecs/vf_yadif.c	Wed Jun 07 16:46:52 2006 +0000
+++ b/libmpcodecs/vf_yadif.c	Wed Jun 07 17:21:45 2006 +0000
@@ -103,7 +103,7 @@
                                 spatial_pred= (cur[-refs  +j] + cur[+refs  -j])>>1;
                             }
                         }
-                        {
+                        if(p->mode<2){
                             int b= (prev2[-2*refs] + next2[-2*refs])>>1;
                             int f= (prev2[+2*refs] + next2[+2*refs])>>1;
 #if 0
@@ -164,7 +164,7 @@
 
     store_ref(vf->priv, mpi->planes, mpi->stride, mpi->w, mpi->h);
 
-    for(i=0; i<=vf->priv->mode; i++){
+    for(i=0; i<=(vf->priv->mode&1); i++){
         dmpi=vf_get_image(vf->next,mpi->imgfmt,
             MP_IMGTYPE_TEMP,
             MP_IMGFLAG_ACCEPT_STRIDE|MP_IMGFLAG_PREFER_ALIGNED_STRIDE,
@@ -172,7 +172,7 @@
         vf_clone_mpi_attributes(dmpi, mpi);
         filter(vf->priv, dmpi->planes, dmpi->stride, mpi->w, mpi->h, i ^ tff ^ 1, tff);
         ret |= vf_next_put_image(vf, dmpi, pts /*FIXME*/);
-        if(i<vf->priv->mode)
+        if(i<(vf->priv->mode&1))
             vf_next_control(vf, VFCTRL_FLIP_PAGE, NULL);
     }
 
@@ -219,9 +219,6 @@
 
     if (args) sscanf(args, "%d:%d", &vf->priv->mode, &vf->priv->parity);
 
-    if(vf->priv->mode < 0 || vf->priv->mode > 1)
-        vf->priv->mode=0;
-
     return 1;
 }