From 9b4542f466580c4193b565638573d1ca8776ae6f Mon Sep 17 00:00:00 2001 From: arpi Date: Fri, 3 Jan 2003 21:54:54 +0000 Subject: cannot rotate non-symmetric yuv pixel formats bugrep. by Filip Kalinski git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8750 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/vf_rotate.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'libmpcodecs') diff --git a/libmpcodecs/vf_rotate.c b/libmpcodecs/vf_rotate.c index 65eb32ffa7..96f212eb66 100644 --- a/libmpcodecs/vf_rotate.c +++ b/libmpcodecs/vf_rotate.c @@ -98,9 +98,27 @@ static int put_image(struct vf_instance_s* vf, mp_image_t *mpi){ //===========================================================================// +static int query_format(struct vf_instance_s* vf, unsigned int fmt){ + if(IMGFMT_IS_RGB(fmt) || IMGFMT_IS_BGR(fmt)) return vf_next_query_format(vf, fmt); + // we can support only symmetric (chroma_x_shift==chroma_y_shift) YUV formats: + switch(fmt) { + case IMGFMT_YV12: + case IMGFMT_I420: + case IMGFMT_IYUV: + case IMGFMT_YVU9: +// case IMGFMT_IF09: + case IMGFMT_Y8: + case IMGFMT_Y800: + case IMGFMT_444P: + return vf_next_query_format(vf, fmt); + } + return 0; +} + static int open(vf_instance_t *vf, char* args){ vf->config=config; vf->put_image=put_image; + vf->query_format=query_format; vf->priv=malloc(sizeof(struct vf_priv_s)); vf->priv->direction=args?atoi(args):0; return 1; -- cgit v1.2.3