[FFmpeg-devel] [PATCH] Fix chroma height ratio for yuv410p

Isamu Mogi isamu at leafytree.jp
Mon Apr 18 11:49:40 CEST 2016


Chroma height for yuv410p is luma/2. Same as yuv440p and yuv420p.

Signed-off-by: Isamu Mogi <isamu at leafytree.jp>
---
 libavutil/pixdesc.c                      | 2 +-
 libavutil/pixfmt.h                       | 2 +-
 tests/ref/fate/filter-pixdesc-yuv410p    | 2 +-
 tests/ref/fate/filter-pixfmts-copy       | 2 +-
 tests/ref/fate/filter-pixfmts-crop       | 2 +-
 tests/ref/fate/filter-pixfmts-field      | 2 +-
 tests/ref/fate/filter-pixfmts-fieldmatch | 2 +-
 tests/ref/fate/filter-pixfmts-hflip      | 2 +-
 tests/ref/fate/filter-pixfmts-il         | 2 +-
 tests/ref/fate/filter-pixfmts-lut        | 2 +-
 tests/ref/fate/filter-pixfmts-null       | 2 +-
 tests/ref/fate/filter-pixfmts-pad        | 2 +-
 tests/ref/fate/filter-pixfmts-rotate     | 2 +-
 tests/ref/fate/filter-pixfmts-scale      | 2 +-
 tests/ref/fate/filter-pixfmts-swapuv     | 2 +-
 tests/ref/fate/filter-pixfmts-vflip      | 2 +-
 tests/ref/lavf/pixfmt                    | 2 +-
 tests/ref/vsynth/vsynth1-svq1            | 8 ++++----
 tests/ref/vsynth/vsynth2-svq1            | 8 ++++----
 tests/ref/vsynth/vsynth3-svq1            | 8 ++++----
 20 files changed, 29 insertions(+), 29 deletions(-)

diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 8a9475c..b3f4c6d 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -217,7 +217,7 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         .name = "yuv410p",
         .nb_components = 3,
         .log2_chroma_w = 2,
-        .log2_chroma_h = 2,
+        .log2_chroma_h = 1,
         .comp = {
             { 0, 1, 0, 0, 8, 0, 7, 1 },        /* Y */
             { 1, 1, 0, 0, 8, 0, 7, 1 },        /* U */
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index 546eb44..f9730be 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -65,7 +65,7 @@ enum AVPixelFormat {
     AV_PIX_FMT_BGR24,     ///< packed RGB 8:8:8, 24bpp, BGRBGR...
     AV_PIX_FMT_YUV422P,   ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
     AV_PIX_FMT_YUV444P,   ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
-    AV_PIX_FMT_YUV410P,   ///< planar YUV 4:1:0,  9bpp, (1 Cr & Cb sample per 4x4 Y samples)
+    AV_PIX_FMT_YUV410P,   ///< planar YUV 4:1:0,  9bpp, (1 Cr & Cb sample per 4x2 Y samples)
     AV_PIX_FMT_YUV411P,   ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
     AV_PIX_FMT_GRAY8,     ///<        Y        ,  8bpp
     AV_PIX_FMT_MONOWHITE, ///<        Y        ,  1bpp, 0 is white, 1 is black, in each byte pixels are ordered from the msb to the lsb
diff --git a/tests/ref/fate/filter-pixdesc-yuv410p b/tests/ref/fate/filter-pixdesc-yuv410p
index f758204..2c1c59f 100644
--- a/tests/ref/fate/filter-pixdesc-yuv410p
+++ b/tests/ref/fate/filter-pixdesc-yuv410p
@@ -1 +1 @@
-pixdesc-yuv410p     87d3cb32a4b5a44b94cd6f61e441d279
+pixdesc-yuv410p     93520ef6e7a0537131f1d9353e433d8a
diff --git a/tests/ref/fate/filter-pixfmts-copy b/tests/ref/fate/filter-pixfmts-copy
index 5f4b162..70992a2 100644
--- a/tests/ref/fate/filter-pixfmts-copy
+++ b/tests/ref/fate/filter-pixfmts-copy
@@ -55,7 +55,7 @@ uyvy422             3bcf3c80047592f2211fae3260b1b65d
 xyz12be             a1ef56bf746d71f59669c28e48fc8450
 xyz12le             831ff03c1ba4ef19374686f16a064d8c
 ya8                 dbb99fbcdc204aaa1a7397ff561f1a67
-yuv410p             5d4d992a7728431aa4e0700f87fb7fd8
+yuv410p             351f02bc7ae8eec231a37aeb56665966
 yuv411p             7e1300e89f5bc07939e2c4a6acbdf267
 yuv420p             a014c7eb7a8385d1dd092b7a583f1bff
 yuv420p10be         f9b154364efaa1af376fa6d8eeae6955
diff --git a/tests/ref/fate/filter-pixfmts-crop b/tests/ref/fate/filter-pixfmts-crop
index 0b54641..76eddb1 100644
--- a/tests/ref/fate/filter-pixfmts-crop
+++ b/tests/ref/fate/filter-pixfmts-crop
@@ -52,7 +52,7 @@ rgba64le            fea8ebfc869b52adf353778f29eac7a7
 xyz12be             cb4571f9aaa7b59f999ef327276104b7
 xyz12le             cd6aae8d26b18bdb4b9d068586276d91
 ya8                 51a8dd297e35d40b06d3ebe8f4717895
-yuv410p             3bb6c7b64f2c46bc5e8b77198ce4ea58
+yuv410p             1a3d636869ba5097d46177684f296e7a
 yuv411p             693e4afe96998e6dd91734037d75d887
 yuv420p             510d36163e4d3710988c23c2240ca6dc
 yuv420p10be         ce9af476d924b463b0f68579f30a6463
diff --git a/tests/ref/fate/filter-pixfmts-field b/tests/ref/fate/filter-pixfmts-field
index 9e04db4..9ff346f 100644
--- a/tests/ref/fate/filter-pixfmts-field
+++ b/tests/ref/fate/filter-pixfmts-field
@@ -55,7 +55,7 @@ uyvy422             1c49e44ab3f060e85fc4a3a9464f045e
 xyz12be             d2fa69ec91d3ed862f2dac3f8e7a3437
 xyz12le             02bccd5e0b6824779a1f848b0ea3e3b5
 ya8                 28cea4f98ed452bd3da9c752e5e3399c
-yuv410p             a85920d6bd26f51306e2ecbe71d1c554
+yuv410p             ca51b16d148e29803bbfc22276948ffc
 yuv411p             9106e283d5dbcfba01c611886d58871a
 yuv420p             9ea8ed3c22c31c0354b7face540bb280
 yuv420p10be         c6e76d651b991c0814a3047b2b3a517c
diff --git a/tests/ref/fate/filter-pixfmts-fieldmatch b/tests/ref/fate/filter-pixfmts-fieldmatch
index 44622d0..6776ec2 100644
--- a/tests/ref/fate/filter-pixfmts-fieldmatch
+++ b/tests/ref/fate/filter-pixfmts-fieldmatch
@@ -1,4 +1,4 @@
-yuv410p             a6c9b4065e8253d8120772f69be0bf04
+yuv410p             8275931d156e9387ca7e34ea4a3d4f36
 yuv411p             b913e634ad37ce046240252bed8681fb
 yuv420p             d448d95326eadeeb12ea0cc348067958
 yuv422p             11ad22ce00c5e8a30d0472f29fb15434
diff --git a/tests/ref/fate/filter-pixfmts-hflip b/tests/ref/fate/filter-pixfmts-hflip
index 98c165b..dd98161 100644
--- a/tests/ref/fate/filter-pixfmts-hflip
+++ b/tests/ref/fate/filter-pixfmts-hflip
@@ -52,7 +52,7 @@ rgba64le            0c810d8b3a6bca10321788e1cb145340
 xyz12be             25f90259ff8a226befdaec3dfe82996e
 xyz12le             926c0791d59aaff61b2778e8ada3316d
 ya8                 4ad5920716de3d2fbbc49f95adb60345
-yuv410p             c49fd0c55c41185b1580aac77211992b
+yuv410p             9a889c647b3bad8b18d15c4e04d671b7
 yuv411p             c416371077dce13d31bf1dc706111ae7
 yuv420p             eb8d9f02db98e10400781428c43e9438
 yuv420p10be         5cd5c8181248b2dbdc7a8669caca3ed7
diff --git a/tests/ref/fate/filter-pixfmts-il b/tests/ref/fate/filter-pixfmts-il
index a9a3c7b..c98e64a 100644
--- a/tests/ref/fate/filter-pixfmts-il
+++ b/tests/ref/fate/filter-pixfmts-il
@@ -54,7 +54,7 @@ uyvy422             d6ee3ca43356d08c392382b24b22cda5
 xyz12be             7c7d54c55f136cbbc50b18029f3be0b3
 xyz12le             090ba6b1170baf2b1358b43b971d33b0
 ya8                 a38d6e288f582f1a04310232ed764afc
-yuv410p             dea1ab8843465adf5b8240b2d98fd85b
+yuv410p             303b50a22dc39045c3594e939070d226
 yuv411p             8bf73777a5ff43c126be274245aceff1
 yuv420p             f1f4e7e94a76d5320049464bdeac24ed
 yuv420p10be         f7839393b65972595bdcb2485c6bf2a1
diff --git a/tests/ref/fate/filter-pixfmts-lut b/tests/ref/fate/filter-pixfmts-lut
index 47e79d1..efb5a92 100644
--- a/tests/ref/fate/filter-pixfmts-lut
+++ b/tests/ref/fate/filter-pixfmts-lut
@@ -6,7 +6,7 @@ rgb24               a356171207723a580e7d277078072005
 rgb48le             5c7dd8575836d18c91e09f1915cf9aa9
 rgba                7bc854c2698b78af3e9159a19c2d9d21
 rgba64le            3a087ecab583d1930220592731f282b4
-yuv410p             51b39a0e33f108e652457a26667319ea
+yuv410p             74f39ffb73e34f107eaf731a67810a1b
 yuv411p             9204c5af92aef4922a05f58c1f6c095e
 yuv420p             7c43bb0cae8dee633375c89295598508
 yuv420p10le         1352712dd31cce78bd5441294004cf85
diff --git a/tests/ref/fate/filter-pixfmts-null b/tests/ref/fate/filter-pixfmts-null
index 5f4b162..70992a2 100644
--- a/tests/ref/fate/filter-pixfmts-null
+++ b/tests/ref/fate/filter-pixfmts-null
@@ -55,7 +55,7 @@ uyvy422             3bcf3c80047592f2211fae3260b1b65d
 xyz12be             a1ef56bf746d71f59669c28e48fc8450
 xyz12le             831ff03c1ba4ef19374686f16a064d8c
 ya8                 dbb99fbcdc204aaa1a7397ff561f1a67
-yuv410p             5d4d992a7728431aa4e0700f87fb7fd8
+yuv410p             351f02bc7ae8eec231a37aeb56665966
 yuv411p             7e1300e89f5bc07939e2c4a6acbdf267
 yuv420p             a014c7eb7a8385d1dd092b7a583f1bff
 yuv420p10be         f9b154364efaa1af376fa6d8eeae6955
diff --git a/tests/ref/fate/filter-pixfmts-pad b/tests/ref/fate/filter-pixfmts-pad
index a734d31..f3aaf15 100644
--- a/tests/ref/fate/filter-pixfmts-pad
+++ b/tests/ref/fate/filter-pixfmts-pad
@@ -18,7 +18,7 @@ rgb24               17f9e2e0c609009acaf2175c42d4a2a5
 rgba                b157c90191463d34fb3ce77b36c96386
 xyz12le             85abf80b77a9236a76ba0b00fcbdea2d
 ya8                 5fc0f471207ddf7aa01b07027d56b672
-yuv410p             cb871dcc1e84a7ef1d21f9237b88cf6e
+yuv410p             602a504b8f5859d6f059e6da795cbcd9
 yuv411p             aec2c1740de9a62db0d41f4dda9121b0
 yuv420p             4398e408fc35436ce4b20468946f58b6
 yuv420p10le         74518a7d68457c54da3300e80c683e9c
diff --git a/tests/ref/fate/filter-pixfmts-rotate b/tests/ref/fate/filter-pixfmts-rotate
index e7bbb55..92f719d 100644
--- a/tests/ref/fate/filter-pixfmts-rotate
+++ b/tests/ref/fate/filter-pixfmts-rotate
@@ -11,7 +11,7 @@ gray                188590b1231afd231ea910815aef2b25
 rgb0                0de71e5a1f97f81fb51397a0435bfa72
 rgb24               f4438057d046e6d98ade4e45294b21be
 rgba                b6e1b441c365e03b5ffdf9b7b68d9a0c
-yuv410p             5d4d992a7728431aa4e0700f87fb7fd8
+yuv410p             351f02bc7ae8eec231a37aeb56665966
 yuv420p             a014c7eb7a8385d1dd092b7a583f1bff
 yuv444p             8f90fb3a757878c545a8bfe5d19a9bab
 yuva420p            b227672e56215e184e702c02a771d7f3
diff --git a/tests/ref/fate/filter-pixfmts-scale b/tests/ref/fate/filter-pixfmts-scale
index 241e839..d55e73d 100644
--- a/tests/ref/fate/filter-pixfmts-scale
+++ b/tests/ref/fate/filter-pixfmts-scale
@@ -55,7 +55,7 @@ uyvy422             aeb4ba4f9f003ae21f6d18089198244f
 xyz12be             c7ba8345998c0141ddc079cdd29b1a40
 xyz12le             95f5d3a0de834cc495c9032a14987cde
 ya8                 0a9db5bb4b009de9197eede5e9d19e16
-yuv410p             e8f49b5fb9335b62c074f7f8bb0234fc
+yuv410p             f72474f28e6b4a19d0225c0d18df6313
 yuv411p             5af32557c93beb482e26e7af693104c6
 yuv420p             5d3ac239c3712143560b1dfbd48a7ddd
 yuv420p10be         95256d0cefca26429b2f41aabc9bee04
diff --git a/tests/ref/fate/filter-pixfmts-swapuv b/tests/ref/fate/filter-pixfmts-swapuv
index e023809..2063750 100644
--- a/tests/ref/fate/filter-pixfmts-swapuv
+++ b/tests/ref/fate/filter-pixfmts-swapuv
@@ -1,4 +1,4 @@
-yuv410p             c87be6ce12b2d505935893b733e21ee4
+yuv410p             82af3e751bd53810cce58401b157687c
 yuv411p             2a8b6b718d437e0bd15b614ea0723a82
 yuv420p             60976c86cb8b9a7ac3a11ba874134f22
 yuv420p10be         84f6ed35268d552fcca83629ab6aa4dd
diff --git a/tests/ref/fate/filter-pixfmts-vflip b/tests/ref/fate/filter-pixfmts-vflip
index c7cc0c7..534b169 100644
--- a/tests/ref/fate/filter-pixfmts-vflip
+++ b/tests/ref/fate/filter-pixfmts-vflip
@@ -55,7 +55,7 @@ uyvy422             3a237e8376264e0cfa78f8a3fdadec8a
 xyz12be             810644e008deb231850d779aaa27cc7e
 xyz12le             829701db461b43533cf9241e0743bc61
 ya8                 4299c6ca3b470a7d8a420e26eb485b1d
-yuv410p             c7adfe96c8e043a6cb9290c39bf8063c
+yuv410p             8432cc5091cc638960ca22781e774d53
 yuv411p             3fce29db403a25f81be39e01aaf6ff3a
 yuv420p             d64fae96fac22aefa8fbcf45a09f37c1
 yuv420p10be         63f545453139f38883cfa1210f7b6ac5
diff --git a/tests/ref/lavf/pixfmt b/tests/ref/lavf/pixfmt
index ec75d4c..f0db104 100644
--- a/tests/ref/lavf/pixfmt
+++ b/tests/ref/lavf/pixfmt
@@ -6,7 +6,7 @@ ac68f9fdd9d55efd0306d9b004038761 *./tests/data/pixfmt/yuv422p.yuv
 304128 ./tests/data/pixfmt/yuv444p.yuv
 ac68f9fdd9d55efd0306d9b004038761 *./tests/data/pixfmt/yuyv422.yuv
 304128 ./tests/data/pixfmt/yuyv422.yuv
-507c7e9f0c97660385df977469ca9e6d *./tests/data/pixfmt/yuv410p.yuv
+f0d62d407a9bf98d25d8c0ae5493830f *./tests/data/pixfmt/yuv410p.yuv
 304128 ./tests/data/pixfmt/yuv410p.yuv
 8594ea0b8d7c2c964525b0801b5351de *./tests/data/pixfmt/yuv411p.yuv
 304128 ./tests/data/pixfmt/yuv411p.yuv
diff --git a/tests/ref/vsynth/vsynth1-svq1 b/tests/ref/vsynth/vsynth1-svq1
index 9c1b6ff..d57dfb5 100644
--- a/tests/ref/vsynth/vsynth1-svq1
+++ b/tests/ref/vsynth/vsynth1-svq1
@@ -1,4 +1,4 @@
-a3206831d34197a2d236d82dd0248646 *tests/data/fate/vsynth1-svq1.mov
-1334233 tests/data/fate/vsynth1-svq1.mov
-9cc35c54b2c77d36bd7e308b393c1f81 *tests/data/fate/vsynth1-svq1.out.rawvideo
-stddev:    9.58 PSNR: 28.50 MAXDIFF:  210 bytes:  7603200/  7603200
+2396b396b25cffa0445d360977f5987a *tests/data/fate/vsynth1-svq1.mov
+1295093 tests/data/fate/vsynth1-svq1.mov
+cc95d739b3fb597f881d6c3a25f99f7d *tests/data/fate/vsynth1-svq1.out.rawvideo
+stddev:   54.61 PSNR: 13.38 MAXDIFF:  249 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth2-svq1 b/tests/ref/vsynth/vsynth2-svq1
index 9c7db7f..ab94319 100644
--- a/tests/ref/vsynth/vsynth2-svq1
+++ b/tests/ref/vsynth/vsynth2-svq1
@@ -1,4 +1,4 @@
-c767386f0f6f36b554d278592bc6e9a4 *tests/data/fate/vsynth2-svq1.mov
-940289 tests/data/fate/vsynth2-svq1.mov
-a8cd3b833cd7f570ddbf1e6b3eb125b6 *tests/data/fate/vsynth2-svq1.out.rawvideo
-stddev:    3.71 PSNR: 36.72 MAXDIFF:  210 bytes:  7603200/  7603200
+64dd32449dd1eaaa10c0c7f291d14bd2 *tests/data/fate/vsynth2-svq1.mov
+927729 tests/data/fate/vsynth2-svq1.mov
+f3ddbd44d4b39977df6d5c75c0484b01 *tests/data/fate/vsynth2-svq1.out.rawvideo
+stddev:   49.73 PSNR: 14.20 MAXDIFF:  213 bytes:  7603200/  7603200
diff --git a/tests/ref/vsynth/vsynth3-svq1 b/tests/ref/vsynth/vsynth3-svq1
index b51fa03..743cf40 100644
--- a/tests/ref/vsynth/vsynth3-svq1
+++ b/tests/ref/vsynth/vsynth3-svq1
@@ -1,4 +1,4 @@
-1eaf318269afd7426406d73397c39a48 *tests/data/fate/vsynth3-svq1.mov
-40773 tests/data/fate/vsynth3-svq1.mov
-a1e5334cf67649bf8c7d95dc4d1bf148 *tests/data/fate/vsynth3-svq1.out.rawvideo
-stddev:   14.49 PSNR: 24.91 MAXDIFF:  183 bytes:    86700/    86700
+9785db479762b3e984da56d284e20903 *tests/data/fate/vsynth3-svq1.mov
+40137 tests/data/fate/vsynth3-svq1.mov
+8ca1928a07a616bdb653a7588d811972 *tests/data/fate/vsynth3-svq1.out.rawvideo
+stddev:   29.66 PSNR: 18.69 MAXDIFF:  229 bytes:    86700/    86700
-- 
2.8.1



More information about the ffmpeg-devel mailing list