summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstefano <stefano@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-01-03 00:09:24 +0000
committerstefano <stefano@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-01-03 00:09:24 +0000
commitf192bfea2a434a6f53e149a5673c990725049add (patch)
tree61d7d3caa1c9ad8ef1deb5d317e5cfbc66468ec9
parent13fe3d4986be4e4b3abda207923677adfaa2ca35 (diff)
downloadmpv-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.c49
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)