diff options
author | stefano <stefano@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-01-03 00:09:24 +0000 |
---|---|---|
committer | stefano <stefano@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2010-01-03 00:09:24 +0000 |
commit | f192bfea2a434a6f53e149a5673c990725049add (patch) | |
tree | 61d7d3caa1c9ad8ef1deb5d317e5cfbc66468ec9 | |
parent | 13fe3d4986be4e4b3abda207923677adfaa2ca35 (diff) | |
download | mpv-f192bfea2a434a6f53e149a5673c990725049add.tar.bz2 mpv-f192bfea2a434a6f53e149a5673c990725049add.tar.xz |
Simplify getSubSampleFactors(), make it use the values provided by
av_pix_fmt_descriptors().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30171 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libswscale/swscale.c | 49 |
1 files changed, 2 insertions, 47 deletions
diff --git a/libswscale/swscale.c b/libswscale/swscale.c index f46e2451fb..9f81a8b3a8 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -2280,53 +2280,8 @@ static int planarCopy(SwsContext *c, uint8_t* src[], int srcStride[], int srcSli 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) |