diff options
-rw-r--r-- | libmpcodecs/vf_pp.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libmpcodecs/vf_pp.c b/libmpcodecs/vf_pp.c index 90bcd3a3aa..12939e8740 100644 --- a/libmpcodecs/vf_pp.c +++ b/libmpcodecs/vf_pp.c @@ -5,6 +5,7 @@ #include "../config.h" #include "../mp_msg.h" +#include "../libvo/img_format.h" #include "../mp_image.h" #include "vf.h" @@ -17,6 +18,16 @@ struct vf_priv_s { //===========================================================================// +static int query_format(struct vf_instance_s* vf, unsigned int fmt){ + switch(fmt){ + case IMGFMT_YV12: + case IMGFMT_I420: + case IMGFMT_IYUV: + return vf_next_query_format(vf,fmt); + } + return 0; +} + static void get_image(struct vf_instance_s* vf, mp_image_t *mpi){ if(vf->priv->pp&0xFFFF) return; // non-local filters enabled if((mpi->type==MP_IMGTYPE_IPB || vf->priv->pp) && @@ -62,6 +73,7 @@ extern int divx_quality; static int open(vf_instance_t *vf, char* args){ char *endptr; + vf->query_format=query_format; vf->get_image=get_image; vf->put_image=put_image; vf->priv=malloc(sizeof(struct vf_priv_s)); |