# HG changeset patch # User stefano # Date 1262477364 0 # Node ID a8283bcc8d2e845c0f295583836ee22f94fc2630 # Parent fe2645bad5195b26318699ed6798e24ef88690dc Simplify getSubSampleFactors(), make it use the values provided by av_pix_fmt_descriptors(). diff -r fe2645bad519 -r a8283bcc8d2e libswscale/swscale.c --- a/libswscale/swscale.c Sat Jan 02 20:45:27 2010 +0000 +++ b/libswscale/swscale.c Sun Jan 03 00:09:24 2010 +0000 @@ -2280,53 +2280,8 @@ static void getSubSampleFactors(int *h, int *v, int format) { - switch(format) { - case PIX_FMT_UYVY422: - case PIX_FMT_YUYV422: - *h=1; - *v=0; - break; - case PIX_FMT_YUV420P: - case PIX_FMT_YUV420P16LE: - case PIX_FMT_YUV420P16BE: - case PIX_FMT_YUVA420P: - case PIX_FMT_GRAY16BE: - case PIX_FMT_GRAY16LE: - case PIX_FMT_GRAY8: //FIXME remove after different subsamplings are fully implemented - case PIX_FMT_NV12: - case PIX_FMT_NV21: - *h=1; - *v=1; - break; - case PIX_FMT_YUV440P: - *h=0; - *v=1; - break; - case PIX_FMT_YUV410P: - *h=2; - *v=2; - break; - case PIX_FMT_YUV444P: - case PIX_FMT_YUV444P16LE: - case PIX_FMT_YUV444P16BE: - *h=0; - *v=0; - break; - case PIX_FMT_YUV422P: - case PIX_FMT_YUV422P16LE: - case PIX_FMT_YUV422P16BE: - *h=1; - *v=0; - break; - case PIX_FMT_YUV411P: - *h=2; - *v=0; - break; - default: - *h=0; - *v=0; - break; - } + *h = av_pix_fmt_descriptors[format].log2_chroma_w; + *v = av_pix_fmt_descriptors[format].log2_chroma_h; } static uint16_t roundToInt16(int64_t f)