--- main/libmpcodecs/vf_crop.c 20 May 2003 17:42:33 -0000 1.17 +++ main/libmpcodecs/vf_crop.c 20 Sep 2003 13:55:54 -0000 @@ -69,8 +69,12 @@ static int config(struct vf_instance_s* static int put_image(struct vf_instance_s* vf, mp_image_t *mpi){ mp_image_t *dmpi; - if (mpi->flags&MP_IMGFLAG_DRAW_CALLBACK) + if (mpi->flags&MP_IMGFLAG_DRAW_CALLBACK) { + vf->dmpi->fields = mpi->fields; + if ((vf->priv->crop_y & 1) && (mpi->fields & MP_IMGFIELD_ORDERED)) + vf->dmpi->fields ^= MP_IMGFIELD_TOP_FIRST; return vf_next_put_image(vf,vf->dmpi); + } dmpi=vf_get_image(vf->next,mpi->imgfmt, MP_IMGTYPE_EXPORT, 0, vf->priv->crop_w, vf->priv->crop_h); @@ -91,6 +95,9 @@ static int put_image(struct vf_instance_ } dmpi->stride[0]=mpi->stride[0]; dmpi->width=mpi->width; + dmpi->fields = mpi->fields; + if ((vf->priv->crop_y & 1) && (mpi->fields & MP_IMGFIELD_ORDERED)) + dmpi->fields ^= MP_IMGFIELD_TOP_FIRST; return vf_next_put_image(vf,dmpi); }