[FFmpeg-devel] [PATCH 3/7] utvideoenc: use ff_generate_len()

Michael Niedermayer michaelni at gmx.at
Wed Aug 22 16:26:45 CEST 2012


19% faster
smaller files
this may also fix possible integer overflows due to previous 32bit useage

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
---
 libavcodec/utvideoenc.c                 |  120 ++-----------------------------
 tests/ref/fate/utvideoenc_rgb_left      |   86 +++++++++++-----------
 tests/ref/fate/utvideoenc_rgb_median    |   80 ++++++++++-----------
 tests/ref/fate/utvideoenc_rgb_none      |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_rgba_left     |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_rgba_median   |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_rgba_none     |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv420_left   |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv420_median |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv420_none   |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv422_left   |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv422_median |  100 +++++++++++++-------------
 tests/ref/fate/utvideoenc_yuv422_none   |  100 +++++++++++++-------------
 13 files changed, 587 insertions(+), 699 deletions(-)

diff --git a/libavcodec/utvideoenc.c b/libavcodec/utvideoenc.c
index 3c58ed6..ed932701 100644
--- a/libavcodec/utvideoenc.c
+++ b/libavcodec/utvideoenc.c
@@ -32,6 +32,7 @@
 #include "dsputil.h"
 #include "mathops.h"
 #include "utvideo.h"
+#include "huffman.h"
 
 /* Compare huffentry symbols */
 static int huff_cmp_sym(const void *a, const void *b)
@@ -287,7 +288,7 @@ static void median_predict(uint8_t *src, uint8_t *dst, int step, int stride,
 
 /* Count the usage of values in a plane */
 static void count_usage(uint8_t *src, int width,
-                        int height, uint32_t *counts)
+                        int height, uint64_t *counts)
 {
     int i, j;
 
@@ -299,119 +300,6 @@ static void count_usage(uint8_t *src, int width,
     }
 }
 
-static uint32_t add_weights(uint32_t w1, uint32_t w2)
-{
-    uint32_t max = (w1 & 0xFF) > (w2 & 0xFF) ? (w1 & 0xFF) : (w2 & 0xFF);
-
-    return ((w1 & 0xFFFFFF00) + (w2 & 0xFFFFFF00)) | (1 + max);
-}
-
-static void up_heap(uint32_t val, uint32_t *heap, uint32_t *weights)
-{
-    uint32_t initial_val = heap[val];
-
-    while (weights[initial_val] < weights[heap[val >> 1]]) {
-        heap[val] = heap[val >> 1];
-        val     >>= 1;
-    }
-
-    heap[val] = initial_val;
-}
-
-static void down_heap(uint32_t nr_heap, uint32_t *heap, uint32_t *weights)
-{
-    uint32_t val = 1;
-    uint32_t val2;
-    uint32_t initial_val = heap[val];
-
-    while (1) {
-        val2 = val << 1;
-
-        if (val2 > nr_heap)
-            break;
-
-        if (val2 < nr_heap && weights[heap[val2 + 1]] < weights[heap[val2]])
-            val2++;
-
-        if (weights[initial_val] < weights[heap[val2]])
-            break;
-
-        heap[val] = heap[val2];
-
-        val = val2;
-    }
-
-    heap[val] = initial_val;
-}
-
-/* Calculate the huffman code lengths from value counts */
-static void calculate_code_lengths(uint8_t *lengths, uint32_t *counts)
-{
-    uint32_t nr_nodes, nr_heap, node1, node2;
-    int      i, j;
-    int32_t  k;
-
-    /* Heap and node entries start from 1 */
-    uint32_t weights[512];
-    uint32_t heap[512];
-    int32_t  parents[512];
-
-    /* Set initial weights */
-    for (i = 0; i < 256; i++)
-        weights[i + 1] = (counts[i] ? counts[i] : 1) << 8;
-
-    nr_nodes = 256;
-    nr_heap  = 0;
-
-    heap[0]    = 0;
-    weights[0] = 0;
-    parents[0] = -2;
-
-    /* Create initial nodes */
-    for (i = 1; i <= 256; i++) {
-        parents[i] = -1;
-
-        heap[++nr_heap] = i;
-        up_heap(nr_heap, heap, weights);
-    }
-
-    /* Build the tree */
-    while (nr_heap > 1) {
-        node1   = heap[1];
-        heap[1] = heap[nr_heap--];
-
-        down_heap(nr_heap, heap, weights);
-
-        node2   = heap[1];
-        heap[1] = heap[nr_heap--];
-
-        down_heap(nr_heap, heap, weights);
-
-        nr_nodes++;
-
-        parents[node1]    = parents[node2] = nr_nodes;
-        weights[nr_nodes] = add_weights(weights[node1], weights[node2]);
-        parents[nr_nodes] = -1;
-
-        heap[++nr_heap] = nr_nodes;
-
-        up_heap(nr_heap, heap, weights);
-    }
-
-    /* Generate lengths */
-    for (i = 1; i <= 256; i++) {
-        j = 0;
-        k = i;
-
-        while (parents[k] >= 0) {
-            k = parents[k];
-            j++;
-        }
-
-        lengths[i - 1] = j;
-    }
-}
-
 /* Calculate the actual huffman codes from the code lengths */
 static void calculate_codes(HuffEntry *he)
 {
@@ -472,7 +360,7 @@ static int encode_plane(AVCodecContext *avctx, uint8_t *src,
 {
     UtvideoContext *c        = avctx->priv_data;
     uint8_t  lengths[256];
-    uint32_t counts[256]     = { 0 };
+    uint64_t counts[256]     = { 0 };
 
     HuffEntry he[256];
 
@@ -544,7 +432,7 @@ static int encode_plane(AVCodecContext *avctx, uint8_t *src,
     }
 
     /* Calculate huffman lengths */
-    calculate_code_lengths(lengths, counts);
+    ff_generate_len_table(lengths, counts);
 
     /*
      * Write the plane's header into the output packet:
diff --git a/tests/ref/fate/utvideoenc_rgb_left b/tests/ref/fate/utvideoenc_rgb_left
index adeb6a2..99d1182 100644
--- a/tests/ref/fate/utvideoenc_rgb_left
+++ b/tests/ref/fate/utvideoenc_rgb_left
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   182328, 928d49b37c9918a1a8674a5ebf20e05a
-0,          1,          1,        1,   182336, c662168526d8fcaa2d8fea224eac8814
-0,          2,          2,        1,   182956, 04dd499aea666d39e6e3579441f694a5
-0,          3,          3,        1,   182384, 230828b8a0eabf61a61f53009639ba4d
+0,          0,          0,        1,   182328, cd084b244939d7e0008d8e5ab3429dc1
+0,          1,          1,        1,   182336, c9c40672750f372134185901147fb776
+0,          2,          2,        1,   182956, c728911ca73225f2dc7453533c9be95e
+0,          3,          3,        1,   182384, 54521f709b461a25198db755bce582fa
 0,          4,          4,        1,   181704, 5e03ab58b4480a6613f54857f10c39e5
-0,          5,          5,        1,   182136, 6ee23e8eba131ae876d0e0ea7c5f40bb
-0,          6,          6,        1,   181552, a930b6040ac40209da63ae14aad00169
-0,          7,          7,        1,   182292, f504d5207bcd7f06064d81e438063b83
-0,          8,          8,        1,   181424, b91cad343cfccdaddacbe7de21dfea76
-0,          9,          9,        1,   182316, 53ed29545ff5aadc232d0fa147612d31
-0,         10,         10,        1,   182064, 393d810a2838b1a997c73c485a6f7114
-0,         11,         11,        1,   182596, af0c838f2268ef5a6f071cd3af4213b1
-0,         12,         12,        1,   180900, 3eef962799e950342d36d069c6d16c72
+0,          5,          5,        1,   182136, c623fb06b90fdd7a5ba0b4f217b6a388
+0,          6,          6,        1,   181552, 5d03be9dfc01ad99364fc3cc8378af72
+0,          7,          7,        1,   182292, fc90878278c82b2f835151dc6d43dd47
+0,          8,          8,        1,   181424, 9b6339a0d3af2d3034162183cd4d79e4
+0,          9,          9,        1,   182316, 7e45bb5ffe57f98a433420abaffe78cc
+0,         10,         10,        1,   182064, d9525605a7d7d75a8e33502f61733af1
+0,         11,         11,        1,   182596, 62e87fa5c33a8d208deaa8719682b9a5
+0,         12,         12,        1,   180900, 149059d3d56c55358c7044c7d569730f
 0,         13,         13,        1,   181920, 0d20f588c27471a038e159a131e9c8ea
-0,         14,         14,        1,   182824, 7a15ecc62b8f1e127887ce1a4f27888e
-0,         15,         15,        1,   182452, b5dd047a2c6ff876334511962ba3de22
-0,         16,         16,        1,   182312, c974923e3d99157667410bd8185b98d2
-0,         17,         17,        1,   181856, e2e836553f3bb1049a462410686ebd37
-0,         18,         18,        1,   181108, 3b6d955727c6bb1c83e10783d5e322ca
-0,         19,         19,        1,   181388, 19bb766c008267a87ff2bf17233bcd24
-0,         20,         20,        1,   180936, c48c9f308e1d58cd227cade9f40d644d
-0,         21,         21,        1,   180900, a4b5e482edd1ab63bcd107e448889b6f
-0,         22,         22,        1,   181936, 43a88f8818a761ad0774e93cec6e8e34
-0,         23,         23,        1,   182304, 1f75b25b6f3944cea81842d74b44ba15
+0,         14,         14,        1,   182824, a301a411ff11042ecb583e1e3b12dbda
+0,         15,         15,        1,   182452, 0ee2a9ed39fb8569a8d6c2b3afb8f80a
+0,         16,         16,        1,   182312, 68dd3b820adf2cbc6686a7d48fa22c6e
+0,         17,         17,        1,   181856, 1897926cfe9b7acaf9c21714c449ce41
+0,         18,         18,        1,   181108, 15d2af460733fdd896078632cdfef9fd
+0,         19,         19,        1,   181388, 8b8e7a4b7d355f41f7e836120c4792ac
+0,         20,         20,        1,   180936, e18e27aa027f2470bfa95c536a0a89af
+0,         21,         21,        1,   180900, eb663ae3c5ffa8e751280e0dbb260e02
+0,         22,         22,        1,   181936, 7514bbe06cee027f54710dc900297863
+0,         23,         23,        1,   182304, 8cb2dcdbd4c919b4c977f45bee46c54c
 0,         24,         24,        1,   182580, 9185ed53b7e8339b61d3abe230bbab71
-0,         25,         25,        1,   182572, f4ece21bb56548d7df0333ccf5c5cf44
-0,         26,         26,        1,   182356, 281975b0138e5e3eeb2f9832b5e56bf1
-0,         27,         27,        1,   181532, ce685ee2c76c3b17a63918e967371f91
-0,         28,         28,        1,   179580, 331569af5ce83bd08ed631b66f3abba4
+0,         25,         25,        1,   182572, 81f8bdd3255b91d6621e9ebd3c9d7679
+0,         26,         26,        1,   182356, 1f9ff40700881054c62e33acde06910d
+0,         27,         27,        1,   181532, 10d2477aa1e319a61e517d25fd6c95d0
+0,         28,         28,        1,   179580, 3012480c43d15866ccc4a81d56650ee2
 0,         29,         29,        1,   179528, 5e0fbd62a164dc72cf511023da792175
-0,         30,         30,        1,   180760, 5b30e7182136e59a5da4a345f22bcb6c
-0,         31,         31,        1,   181564, 53919baccc7eedc83f8a242581f0dc83
-0,         32,         32,        1,   181428, 94221b58afd266a92d763b32a5c7ee8d
-0,         33,         33,        1,   182980, 202c771f9d1056f8e0000028c716f134
-0,         34,         34,        1,   182624, a0a1466f85870adf5fae0c922aeba348
-0,         35,         35,        1,   182352, a0d790951e4f2c0e80aa94f88456d9ca
+0,         30,         30,        1,   180760, 679f430c86dca203456f532e978dffc2
+0,         31,         31,        1,   181564, 64d31faf01cb7b52d7d7e20280e6652b
+0,         32,         32,        1,   181428, 04961d71aa3c81b33d28b39ead20ee1d
+0,         33,         33,        1,   182980, 51361c802005721002f5f4924f081708
+0,         34,         34,        1,   182624, 67c5582c45e3ee7e6aca49fdc0a980b8
+0,         35,         35,        1,   182352, 4fade9db12f2d6ce633556fdb8914971
 0,         36,         36,        1,   181336, ac8fbab67b36d58c4e8374bfb07458e7
-0,         37,         37,        1,   181528, 91150acfb9da0656d52dab68b4b526df
-0,         38,         38,        1,   179776, 0d91b14f5e87671583db9adbc5306247
+0,         37,         37,        1,   181528, f798157b6d4d04c767ecb76346922ddc
+0,         38,         38,        1,   179776, 01d407ed0b86eeb2c3ee3c24dd452d8d
 0,         39,         39,        1,   180100, 062e4af150100d7accf86a907a4b99b5
 0,         40,         40,        1,   180228, 23c617b76ef8f274bd089016fb8516c7
-0,         41,         41,        1,   180592, 72e3aaa7131e2385845600f0793022c6
-0,         42,         42,        1,   181188, 3e50bceb61a1a880f21e6f1b713c4ee3
-0,         43,         43,        1,   181300, c001028d3481dc5be1c694cb4693c879
-0,         44,         44,        1,   180812, bb0cabd09e9c0d4717c936a6d6532cce
-0,         45,         45,        1,   178816, cae14eb93a455bd8210ab7f2f8ef31f7
-0,         46,         46,        1,   178196, 5d8bb486d7b6e241e2cbd3702a97dba2
-0,         47,         47,        1,   178772, 63a30c640a7aed626e4bcc749e7e594a
-0,         48,         48,        1,   178652, db9f7c1968896659c00dc50cf7070184
-0,         49,         49,        1,   178512, 28ce86e70639638a6da209a3e9d63eb5
+0,         41,         41,        1,   180592, 55f538ae5e44b60209138b7536d5c199
+0,         42,         42,        1,   181188, d39d52f5b690661434b1abd8717b3e30
+0,         43,         43,        1,   181300, 9e202444287234bafd103fab83b1a974
+0,         44,         44,        1,   180812, 602165271de71594132cce98af56a7b2
+0,         45,         45,        1,   178816, c427d67196f43ece6bf3855e1256d7bb
+0,         46,         46,        1,   178196, 0d05902e2870a85333a216c723077e98
+0,         47,         47,        1,   178772, 57f528eb984b5b7181c89b48b58271f3
+0,         48,         48,        1,   178652, 5cd1031b0ada3ba9c2d4c2f2b7c8e277
+0,         49,         49,        1,   178512, d3c0c84fc63f1e32a4a026e2cd39b161
diff --git a/tests/ref/fate/utvideoenc_rgb_median b/tests/ref/fate/utvideoenc_rgb_median
index 6d83583..5983ddf 100644
--- a/tests/ref/fate/utvideoenc_rgb_median
+++ b/tests/ref/fate/utvideoenc_rgb_median
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   182160, 927bd48282b1545ce73bf9c68670a9b4
-0,          1,          1,        1,   182104, d60b5eb10ff0a5cfd928ca00c215d344
-0,          2,          2,        1,   183108, eab7279cfaf1cdde8a6c874f8fd83c49
+0,          0,          0,        1,   182160, abcf4f477f74b696faca2fcff1f62aa9
+0,          1,          1,        1,   182104, 7cbcf339fa40c24522067295b39d637f
+0,          2,          2,        1,   183108, dfc2c418f4379a89654c16b34ff19446
 0,          3,          3,        1,   182320, 62a4647b05709d86c51a18be16877e98
-0,          4,          4,        1,   181920, 33cef2cf9df3293153192c2d71b3e04f
-0,          5,          5,        1,   182424, ca198cc391d762fce8a0d1b52bf20f4e
-0,          6,          6,        1,   182248, 37666d2ea0c2c78e158b0f2eac6d367e
+0,          4,          4,        1,   181920, 61d63520703503f6e17fad67cbc08794
+0,          5,          5,        1,   182424, f467638396feabe613b3c851289452d8
+0,          6,          6,        1,   182248, 8a0cba950d6c5d63ba9603212ca95b0e
 0,          7,          7,        1,   181876, 91432f472cf373d5d4036bd100950f3e
-0,          8,          8,        1,   182104, f78415ac9304c2ff0ef903debf9148bd
-0,          9,          9,        1,   182540, c98da552ec452e2b6877fed05ecd7fee
+0,          8,          8,        1,   182104, 1c8852d82a48c1b01911ffbedf0ac1f4
+0,          9,          9,        1,   182540, f36b9d48123b55f2141ae10dd26e1ca0
 0,         10,         10,        1,   182120, e6ecdb9af6591916153ca9aeba76b9d0
-0,         11,         11,        1,   182136, 6367ca0d64b63303c2292b788dba0e60
-0,         12,         12,        1,   181296, 59cec61dd7efc242939233b06ea683f3
-0,         13,         13,        1,   182136, fc906cc12493c70f3f8fcbf640a7ffe8
-0,         14,         14,        1,   182412, 571b1171b74de32801be9bd02a773eaa
+0,         11,         11,        1,   182136, 7dc7b828a5b7c652df612474fad66f6b
+0,         12,         12,        1,   181296, 347eac6563435a62f75298cefe13d3a6
+0,         13,         13,        1,   182136, 3bbcd8afacdf9549da9ebd736df548a7
+0,         14,         14,        1,   182412, 17f8c6ef692b4085624ce1ef7efbc963
 0,         15,         15,        1,   182732, 9212760fa11fe4fa193ba1aa259e9765
-0,         16,         16,        1,   181944, c8779690e7935000d38eba9889a40056
-0,         17,         17,        1,   182232, e531631c1f9b273dd476bba14c2e36e1
-0,         18,         18,        1,   181512, 012dec9becd805ded4452e9479edaa52
+0,         16,         16,        1,   181944, 7dd6d6a7084f97a77ec09ec6c62f0ab8
+0,         17,         17,        1,   182232, 518552687d47ae93726679f0ed962ef4
+0,         18,         18,        1,   181512, 29a66924742add13a0cae65d93d38ea9
 0,         19,         19,        1,   181424, 67c965637248333f92da9d493bf7546e
-0,         20,         20,        1,   180764, 6139b448310c9c31f8fb6563a7fa194c
+0,         20,         20,        1,   180764, 298457c6c2b3f4ebcda87a12579f094d
 0,         21,         21,        1,   181072, 493ea592b7d59eebf01c002e7e22fc43
-0,         22,         22,        1,   181160, 850adac4246bdf1fb1ada47e7886cb77
+0,         22,         22,        1,   181160, e30195fcc16ecfbb9348943cff01623f
 0,         23,         23,        1,   182156, d26cfac33e19b4ca11210c9e6cb91955
-0,         24,         24,        1,   182260, 9554fd3b74b753135d298d788aae7c8d
-0,         25,         25,        1,   181976, 5b94e7cd232949746691a94ebcc44fbe
-0,         26,         26,        1,   181832, a0f9c815cb53396cec2164d32a900d46
-0,         27,         27,        1,   181424, d2469bf8274936e282e78cb8f7f84859
-0,         28,         28,        1,   180632, f1862cea94f752a8a104076ddee2f19f
-0,         29,         29,        1,   180624, 01a084f93f7e58320a6972ddfba6d15d
-0,         30,         30,        1,   181024, a744315a8357da7d85d23b107562270e
-0,         31,         31,        1,   181844, 11d1feaef20b793f1c474014e0eccd75
+0,         24,         24,        1,   182260, 963c157d3f0023b49d23099d53d60c8b
+0,         25,         25,        1,   181976, 2494d481bf2be97692eaeda95f279b0d
+0,         26,         26,        1,   181832, f1be95c840d4fcb0c8d4b7aed5b197c5
+0,         27,         27,        1,   181424, 03d92e89358a8b9b9e7cf302edde307e
+0,         28,         28,        1,   180632, 09f9e162fdaf28342c442172179a75c9
+0,         29,         29,        1,   180624, 481e7f7730ab3ba67c06faa620a8bd5e
+0,         30,         30,        1,   181024, 7a1d1b06b73d2bf41563eb749805780c
+0,         31,         31,        1,   181844, 8a6ce6dd6f79e423a3bb6c2b163adc55
 0,         32,         32,        1,   181712, a68007bbdf0169c9ed2dffae3dc63221
-0,         33,         33,        1,   182008, 4880e81cfd06ae1ee7016e292f2c8a0b
-0,         34,         34,        1,   181800, c40bd225be33ad95c2757d6204d83212
-0,         35,         35,        1,   181840, 655275b71e3ce4999ef7b54bfd4ab7d1
-0,         36,         36,        1,   181848, 072f45397965a649c3dcd42737a81381
-0,         37,         37,        1,   181976, 624d00b654dec2ebb13a43a2eed726ed
-0,         38,         38,        1,   181216, 9d52bb427c7d82e74aa00839f4093173
-0,         39,         39,        1,   181236, 873d7aa5b7e7a6e1a64044e35891ab69
-0,         40,         40,        1,   180672, f584290b2b0384f7c86ce0aa07a2c0f1
-0,         41,         41,        1,   181324, 87eda71b74f8033e5a142d17beb0bccc
-0,         42,         42,        1,   180980, c6a41621433317f6cce5bbc90e9b11d2
-0,         43,         43,        1,   181204, df15a287bfc1dbda81be966046c0982e
+0,         33,         33,        1,   182008, f37dd0635de369761e2de979ee799c3a
+0,         34,         34,        1,   181800, 14029ba1c364eca476559ce553919e99
+0,         35,         35,        1,   181840, ee227d15f15c3cd564dcad2160453fb7
+0,         36,         36,        1,   181848, 13b5d0892cc76a25b4914f2d706a0ad5
+0,         37,         37,        1,   181976, 1a0be9f2cefe0d867c5c03d6b3987ad8
+0,         38,         38,        1,   181216, 79795d735f9e0f92091203bf8b9eb9ed
+0,         39,         39,        1,   181236, 2d006c8c4ba448ca7841df76e44ffa88
+0,         40,         40,        1,   180672, ed5210abdae49042fcae9bde2f65a057
+0,         41,         41,        1,   181324, fbbc7839c595cd0f0efc0917edfed2c3
+0,         42,         42,        1,   180980, c6120b5a9440f4a0d83731627eb96d98
+0,         43,         43,        1,   181204, ac4371912d16f657c90e8a00cfafdfd2
 0,         44,         44,        1,   180720, d392d95c67349296d922dbf53ec3f832
-0,         45,         45,        1,   180028, 8bded0918eae1e10073a40df3b6f0f39
-0,         46,         46,        1,   179704, d23b2c0b47d81b60b64c05303bc163eb
-0,         47,         47,        1,   179648, 2a178bb890bff21a27eec2342aeecb7f
-0,         48,         48,        1,   179424, 31e54f174861aa95b52ba65fdbef6af8
+0,         45,         45,        1,   180028, 37a2717fbd5aaeb128812298484f8267
+0,         46,         46,        1,   179704, e8716f4856e4ccdc541632a218894f62
+0,         47,         47,        1,   179648, e99cbe5d1bbd7bce241ae500b4de06c2
+0,         48,         48,        1,   179424, 6f8a5e356fb77b61d9dfcabdf97340b9
 0,         49,         49,        1,   178980, 75a7700b822236b0ecb169fd692910f1
diff --git a/tests/ref/fate/utvideoenc_rgb_none b/tests/ref/fate/utvideoenc_rgb_none
index f9cfe47..d6c6962 100644
--- a/tests/ref/fate/utvideoenc_rgb_none
+++ b/tests/ref/fate/utvideoenc_rgb_none
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   301056, 16fddab8a093730a98394234e2cfd39d
-0,          1,          1,        1,   301068, d9eca93b47feb9b157509686253b588d
-0,          2,          2,        1,   300844, 8d360d038ee45975061a3b5cfea0f76f
-0,          3,          3,        1,   300904, 109420862f1e7923ed1e8b1756562fe1
-0,          4,          4,        1,   300912, 51ee9a75c2bb8e0a67909fc1cd9fa1f2
-0,          5,          5,        1,   300936, 7e94181f755e5be96e88b4739bff43f0
-0,          6,          6,        1,   300944, cdd1bc438693038196e034d3674cec2e
-0,          7,          7,        1,   301044, d504326bed6aaaf078944fed43c85a64
-0,          8,          8,        1,   301080, aaeff1e9f961a4eb92590ca8521864ed
-0,          9,          9,        1,   301044, ba37977e1411497f3539b19559b3d5cd
-0,         10,         10,        1,   300944, b99ecf4877e735fc99d698d55f7fa6c0
-0,         11,         11,        1,   300912, d804f669f681eeb1093033288403edb8
-0,         12,         12,        1,   301048, cf9fb69bd1b4556f8d021ba1f36122ab
-0,         13,         13,        1,   300964, 631724c93959570619a01de5728fb5ba
-0,         14,         14,        1,   300868, 036d5880f9bb43dfd8475b58bd39e818
-0,         15,         15,        1,   300880, 719f004dca44602d1eced2aa33e20278
-0,         16,         16,        1,   301020, c7da77d6ff794c8b0e921f5e31dd1174
-0,         17,         17,        1,   301076, c890504084316eeced27e3b1363fa955
-0,         18,         18,        1,   301192, bb0dae1f108bd07eaacdc11b7e9ae064
-0,         19,         19,        1,   301228, 26d9305b99b063f2c1ff7224f5c3bc3d
-0,         20,         20,        1,   301180, fcfabb91547c5fe81318684c6c8f9125
-0,         21,         21,        1,   301180, 6680360f572c4d83ff831ecf07e9a314
-0,         22,         22,        1,   301116, 5ff83a1f27cce2b194ff568e43ee347c
-0,         23,         23,        1,   301060, 80466ff8cfaac1b88b7e3236117e19b7
-0,         24,         24,        1,   301132, 7bc63a1e87ec3aaab981dabe83b8704c
-0,         25,         25,        1,   301144, 47f57cdcc4a2ad0c8dd1e8de116c0567
-0,         26,         26,        1,   301088, e0c17cd6bda91508ba76fe515ca1049c
-0,         27,         27,        1,   301232, c02d667805bf4c064b4e28a8994e49ae
-0,         28,         28,        1,   301152, ac8f1a611e7b70efd3093474f65483d1
-0,         29,         29,        1,   301224, 79038baba3dca1bc0e64ed74fe6f7b97
-0,         30,         30,        1,   301224, 2daa40534dd3a50c13b04d1cf509f28b
-0,         31,         31,        1,   301160, 11179bb8304b07854d251e83a4b82d83
-0,         32,         32,        1,   301120, 296ae4ff30abc4ef34be1d8a6c025ddb
-0,         33,         33,        1,   301100, 3ff85950d03159f6d86489ae88c45e7c
-0,         34,         34,        1,   301000, 32e7d1a9cd293b21be0dd4dc37e93a7a
-0,         35,         35,        1,   301156, 73c1c8cf26690283eb34bd8cd60e6e5b
-0,         36,         36,        1,   301232, 8c0bd92cda79f22c66c9732a6caaafc8
-0,         37,         37,        1,   301228, d661dfca51ca9ea79b9712d6f9d97437
-0,         38,         38,        1,   301296, 0b26c18a4b1ad60e150beabbb1576e12
-0,         39,         39,        1,   301296, 7975b6ccf5a08524bd2cb6a810a444a5
-0,         40,         40,        1,   301308, a80739008309fb1941a54189860a1683
-0,         41,         41,        1,   301268, 3066dd46ff962c2f6438a97c288ef1d2
-0,         42,         42,        1,   301344, 0069bb6b069ff6af3081017f1fdb896c
-0,         43,         43,        1,   301308, f94eacab194d54cfedcc5258d9ddf037
-0,         44,         44,        1,   301292, cb272181cebccc7c3dd64bcf7b49346f
-0,         45,         45,        1,   301344, 1a0d39b0c3f63dc53e62780f875e2f9e
-0,         46,         46,        1,   301432, 42fcb42f65050c4e261a147e49b851a7
-0,         47,         47,        1,   301440, 90f5c3e79c34777174b0eec0ae7bbd50
-0,         48,         48,        1,   301460, eea061bdda0964daa227164d06db6feb
-0,         49,         49,        1,   301444, 6a9bcc9cecab9f43b7bb2c2110853320
+0,          0,          0,        1,   301052, 8645cb98470205cceea3c2026223b69f
+0,          1,          1,        1,   301068, 9123c3c31ac0bc0832bb07e8c6d5b372
+0,          2,          2,        1,   300840, 394aa034eba2b306efa8171efc5fb960
+0,          3,          3,        1,   300904, 1abc4512d268bb7bb4b9f467aa19e5a8
+0,          4,          4,        1,   300912, e117d6f8d2bbd89bdce86cd5c4cf6206
+0,          5,          5,        1,   300936, d6a6c100e6dfd0e4dcdaa67ec59a757a
+0,          6,          6,        1,   300944, 3a0bf05461965bf2e538f5ed1067e784
+0,          7,          7,        1,   301044, 66e2fef970e8d997bb52f28eed9ad6fe
+0,          8,          8,        1,   301076, 6ae8f26125255c46be8c6da07d21ba35
+0,          9,          9,        1,   301044, 024d41f9d3b217b58ad6ba2a8f3b680d
+0,         10,         10,        1,   300944, 5dc0387f32b68e365c467f9dcc62b923
+0,         11,         11,        1,   300912, 47db16c6118feb2143fe0d1ec909bb51
+0,         12,         12,        1,   301044, 7161af85d2c85529b83548a701c6f5b7
+0,         13,         13,        1,   300964, 2dd90b4edcfc8d2b84168f42c7a47785
+0,         14,         14,        1,   300868, 76b296949227e7b22f204bec90dd02af
+0,         15,         15,        1,   300880, 44f9c830be2c9efdda335bf774f3b6c6
+0,         16,         16,        1,   301020, 70c1883ae4ff2ae8b0d5a608a75c839c
+0,         17,         17,        1,   301072, bac10cb932595594e4e8146831bbe00b
+0,         18,         18,        1,   301192, 46c2aa31dc33baa4d37f71f9873cbe6f
+0,         19,         19,        1,   301224, 396c406acf79cbe79c064ccbe7a3b648
+0,         20,         20,        1,   301180, 8d5d2071ddc79335f6785a921851905e
+0,         21,         21,        1,   301180, 9767bc30cadd23f0625e665e9b70ac31
+0,         22,         22,        1,   301116, fba702e0ab727d9446a7796790a10545
+0,         23,         23,        1,   301060, 9a08113dd947874b57d4cc85d56343ca
+0,         24,         24,        1,   301128, a58b1ebeb28fac3c88f64c8ba15f0591
+0,         25,         25,        1,   301144, e071b28b961f8d9c5da9b1ff41c24c2a
+0,         26,         26,        1,   301088, d19bed9054db25a718724d746d22c800
+0,         27,         27,        1,   301232, 70b2832bb0eb5f8a74e0bee411f66a46
+0,         28,         28,        1,   301152, 470bd72096d3ef6b5490b03cfdea438d
+0,         29,         29,        1,   301224, f3c285eb28a3c5b820276d3a68976df4
+0,         30,         30,        1,   301224, a432bfc1e022f189a70cbc963d716596
+0,         31,         31,        1,   301160, fbde0ac1bb6e5dbd870c1c6d8f03190c
+0,         32,         32,        1,   301120, 61f251db3d73483206609718063cfbb9
+0,         33,         33,        1,   301096, 6c1908eac263c8c3368683ced8078da4
+0,         34,         34,        1,   301000, 4b8df4fa83c085ea36369dbdd37f58bd
+0,         35,         35,        1,   301152, e2ceb9ff6b72b815e4b511a85dc0ae38
+0,         36,         36,        1,   301232, 27cc508ff5081f9c901c4eabd62e5835
+0,         37,         37,        1,   301228, bdb62b975b1cfe4ba8be08be1e8b1a5e
+0,         38,         38,        1,   301296, 13fc07f3935b70e98922233cf81bc7a4
+0,         39,         39,        1,   301296, 5fe19496257987b809e56e3c11192c43
+0,         40,         40,        1,   301308, a86115cd10e74c795739e8e325403ac6
+0,         41,         41,        1,   301268, 6c1f7bbf077ff58486f256e2ce9d01e6
+0,         42,         42,        1,   301344, 3fda739956dfa07a15cc5bd7e054568d
+0,         43,         43,        1,   301308, 54584061bcce46feb19aafa37922f923
+0,         44,         44,        1,   301292, 092e08d230dcfe4abd1460ef26c31421
+0,         45,         45,        1,   301344, 39ca46f9f38434aee15660263921f392
+0,         46,         46,        1,   301432, f7b76bebcfc614537c20bd6b20096d78
+0,         47,         47,        1,   301440, 86c97147d03bf7aee71073127c7fad32
+0,         48,         48,        1,   301460, 3fdbe5ae0b7e6b7ec0bc5668ba50a491
+0,         49,         49,        1,   301444, 8ef2e62af67f91e886b8f25456b38869
diff --git a/tests/ref/fate/utvideoenc_rgba_left b/tests/ref/fate/utvideoenc_rgba_left
index 7e8aff4..757febe 100644
--- a/tests/ref/fate/utvideoenc_rgba_left
+++ b/tests/ref/fate/utvideoenc_rgba_left
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   195264, f5b71c1d95ed9d1b9ffaaed946d2c554
-0,          1,          1,        1,   195272, 30b0058c43e07814f3e4864b0c558d6e
-0,          2,          2,        1,   195892, f7814ed390a88acded660d0bf9427675
-0,          3,          3,        1,   195320, f6146b50ed7fd18f63ef192dcc8fef7b
-0,          4,          4,        1,   194640, 143611fe4905227fe5110dd507b2f0a8
-0,          5,          5,        1,   195072, 61b37039712a47a57303f768927ab67b
-0,          6,          6,        1,   194488, 5e159e73ce4cb29bebb10de35da29383
-0,          7,          7,        1,   195228, 131642b2a5e332068339516dc8638e48
-0,          8,          8,        1,   194360, 0d9c4b75a7f33beaac9ef643c704a6e0
-0,          9,          9,        1,   195252, 1d7879a44418c6b0a0abfa2f972e471a
-0,         10,         10,        1,   195000, ab70dd483502f27eb98056dc1bfd9d5a
-0,         11,         11,        1,   195532, 7126075b9cc0491e61fe738a173c6de2
-0,         12,         12,        1,   193836, cd4257a848045b98f2eefef064250db4
-0,         13,         13,        1,   194856, 11567f349e791347ca53aae0f4c0799b
-0,         14,         14,        1,   195760, 4c684f86ebbd9f0a344ecfec00f09c1e
-0,         15,         15,        1,   195388, 0795f92355b433dcab444d1cd904ee7c
-0,         16,         16,        1,   195248, cab5c1de6f1a26cc30d1f9e18d2eac86
-0,         17,         17,        1,   194792, 3f7053548d808301f85e088ed7a81ad8
-0,         18,         18,        1,   194044, 53b3aa44bf95cc63208d41465cb04eea
-0,         19,         19,        1,   194324, 5179610e0e3f6ce3f95fc193368e9bac
-0,         20,         20,        1,   193872, 4b0b61055e417ccddd35c7ccdcf27779
-0,         21,         21,        1,   193836, ef2404e633e32ff11e4486970149865e
-0,         22,         22,        1,   194872, 9d436ba22481a2508425044bc7e008b1
-0,         23,         23,        1,   195240, 5d1fe26e63077879d8bac6100b943e89
-0,         24,         24,        1,   195516, 880cc1ae98c012788a1ac83330ce7593
-0,         25,         25,        1,   195508, 381d1162ffc4d7773d665262c30b0a3c
-0,         26,         26,        1,   195292, 4ba16e9f821ce52063efc159fbf85328
-0,         27,         27,        1,   194468, b74ff25c30aefcf7f67db8a612850953
-0,         28,         28,        1,   192516, c4802f4ebd64ab160f2f010c3659029c
-0,         29,         29,        1,   192464, d6efdd2e6fbbfe80ca172e71c03049d9
-0,         30,         30,        1,   193696, f1a4377ba7cb575210e2b5e727b5ab80
-0,         31,         31,        1,   194500, a43505b9bbd48e2d90833dd0a76835ea
-0,         32,         32,        1,   194364, 3f924d8dbfeb5937998d1e5fa8750583
-0,         33,         33,        1,   195916, f3a88d66651aaf090ef2793d5925f995
-0,         34,         34,        1,   195560, bfc13e50f8ff9645e6fa14d65e9b50d8
-0,         35,         35,        1,   195288, 0147ff42692d46139fc15ce5946ab206
-0,         36,         36,        1,   194272, 2b99f99115326e8b2e8116ff8bd36eb9
-0,         37,         37,        1,   194464, c6365f3ab37d823ba0bdef05b4d753ba
-0,         38,         38,        1,   192712, 1e259445e4324a61057fc212dcb88907
-0,         39,         39,        1,   193036, 1aa02bfb781c91997b9a3bbbe4f36e1d
-0,         40,         40,        1,   193164, 851685117ef8f9eca02d537645bd5b17
-0,         41,         41,        1,   193528, c7dfed0b5f43e30a3df5b7ab4fe71651
-0,         42,         42,        1,   194124, fb5e4ef20484ba4cf61f923f886a2170
-0,         43,         43,        1,   194236, 7fd8294a2f972ef855a52a89dd450b30
-0,         44,         44,        1,   193748, 7ad5c528463bef0fd80fd6fc4cab4e0c
-0,         45,         45,        1,   191752, a490b1bc7619c1b41a04e8b6ea86a748
-0,         46,         46,        1,   191132, a9d25233c59792c6323002f8242d8512
-0,         47,         47,        1,   191708, f3f34fe88994a927f258962f5caea435
-0,         48,         48,        1,   191588, 5c70bf58c4e2a1a0959cf6c7d6b7dd11
-0,         49,         49,        1,   191448, 804f24b6a536fe2f93206d431525125f
+0,          0,          0,        1,   195264, 5869dee2126d98ecc1fab1e69720906a
+0,          1,          1,        1,   195272, 1bd08dcde1061b0d9273bdc6dd901382
+0,          2,          2,        1,   195892, 2b3fc3632bcd1cc44f777fb97a56f79b
+0,          3,          3,        1,   195320, 792870fc50a4145ad561b1004a8b6451
+0,          4,          4,        1,   194640, c3d4031c46d6dc64e632e2d38b48fc96
+0,          5,          5,        1,   195072, 27e4b09e7f8446a8dd8dd7dcbc578e2b
+0,          6,          6,        1,   194488, e44441beb8d3e358112e2776a0116ea9
+0,          7,          7,        1,   195228, 0519afd694512aea2c839fe0456e518c
+0,          8,          8,        1,   194360, 7296944c86296fb256188975db6e5620
+0,          9,          9,        1,   195252, 40b53999a36ce413256c7a81c3aa0c44
+0,         10,         10,        1,   195000, 925fe520c460f94ae7a05cf0e6cf8dd8
+0,         11,         11,        1,   195532, af417aac106af9b4e8c04cf1a84d3bd8
+0,         12,         12,        1,   193836, 0eadf04f475a93ebef3979d32c13ee92
+0,         13,         13,        1,   194856, 5814ff44b233d68e4c991703c0fa6f44
+0,         14,         14,        1,   195760, e9a66bbeadeab4ed3f34296346eafc27
+0,         15,         15,        1,   195388, 17d33cd676c8b464d1b97ce0f0234716
+0,         16,         16,        1,   195248, 1054b945cd6e11e70d8b348e540e4dd5
+0,         17,         17,        1,   194792, f0a6ceee9014f6cf8a999f344897ad3e
+0,         18,         18,        1,   194044, 4fbf2b9fd8b7e8233f65b5bf61e326c0
+0,         19,         19,        1,   194324, eb90b72edafab7bbe5e9ff561313927c
+0,         20,         20,        1,   193872, 6ebc973b9f66e1ebdb3029f1aadd9a24
+0,         21,         21,        1,   193836, cde713fba6bede0361779c45f7a6d80b
+0,         22,         22,        1,   194872, 64225b7d92c8371ed0335d7693902f60
+0,         23,         23,        1,   195240, b11e0b10b4e713caffec706d952edb7b
+0,         24,         24,        1,   195516, 932244aee01b068f1bfb5132f092675b
+0,         25,         25,        1,   195508, 2745faafa2ec34dcf2cec2f5f791f49b
+0,         26,         26,        1,   195292, 6ff67783eabad9c72b146d510ffa0b7e
+0,         27,         27,        1,   194468, cc5aa248fe507ac3fbb839b9388856bc
+0,         28,         28,        1,   192516, 13063bb195380953743ab24a73ff6ddd
+0,         29,         29,        1,   192464, a391b0d795b2f565cc3e351975fb528d
+0,         30,         30,        1,   193696, 4239c695d1b9eaa44c2d037a9c39da20
+0,         31,         31,        1,   194500, 5857b4c4cc86a9a0f38d833c236e396c
+0,         32,         32,        1,   194364, ad0eeec7622c76bd996deac7e99390e5
+0,         33,         33,        1,   195916, b98da9283eef85f6dffe308774161441
+0,         34,         34,        1,   195560, 32f924fc40bb777c951481b623a8f46b
+0,         35,         35,        1,   195288, 96a7bb386420902fbb98b8267d4496ca
+0,         36,         36,        1,   194272, 98b88d6092708ffff416417d8f628477
+0,         37,         37,        1,   194464, 3c8295490b77415c2e4ebb7ce9b8cc53
+0,         38,         38,        1,   192712, 17798a13ba5f82939d98dfd619a68e18
+0,         39,         39,        1,   193036, b92ab54b363c1bd29042feeb3b9f5631
+0,         40,         40,        1,   193164, a971b68bb49148afdf510be5f5793933
+0,         41,         41,        1,   193528, 6fbf07d240e0073e57d295bdd0d32465
+0,         42,         42,        1,   194124, 4b1ddea464b8e40da48418e77b4fdf7a
+0,         43,         43,        1,   194236, d46914a9e2bdda30bf84b3282924bb3d
+0,         44,         44,        1,   193748, 3d4587081c6d73366d85e5df42c87810
+0,         45,         45,        1,   191752, 996274b3852ac6af30db8f9e242895e0
+0,         46,         46,        1,   191132, 5a1e47e4d1cc9e18e94041b4357a5de4
+0,         47,         47,        1,   191708, e3048c5ba2b9a494791cad3cbf843780
+0,         48,         48,        1,   191588, dbc63170a9b7be348497162c42a1b9f1
+0,         49,         49,        1,   191448, db923a15f424e69bbf8c8af2a2f7e157
diff --git a/tests/ref/fate/utvideoenc_rgba_median b/tests/ref/fate/utvideoenc_rgba_median
index c1e7a50..1198a33 100644
--- a/tests/ref/fate/utvideoenc_rgba_median
+++ b/tests/ref/fate/utvideoenc_rgba_median
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   195096, 07f8ab6c21d43accdc468e8094072475
-0,          1,          1,        1,   195040, 25430ae420a26ea70ab73ae2fd4f558a
-0,          2,          2,        1,   196044, eeeaa5cfc54537f860f88b67d59ba568
-0,          3,          3,        1,   195256, f12b178cc901ea71bfc66b844e772710
-0,          4,          4,        1,   194856, 337796f5168cf44ab2871e3d2e3f20cf
-0,          5,          5,        1,   195360, 26bc4e452288cea2409ed7a10304f6a1
-0,          6,          6,        1,   195184, 70765a689e3c7751ffe43f042ba9d9b3
-0,          7,          7,        1,   194812, fbe55683b8af121205dbfc5fc7257907
-0,          8,          8,        1,   195040, db2156d4e31b34e3aab0e245b070afa8
-0,          9,          9,        1,   195476, 788fb862ec12c7383b571a75f616e046
-0,         10,         10,        1,   195056, e22a8e7d469a9baed77853e5bc991034
-0,         11,         11,        1,   195072, 8d7556d525c1482bfe50f1aa668c3ef3
-0,         12,         12,        1,   194232, b6bc090090c8dc46cb771b0d8c10082b
-0,         13,         13,        1,   195072, 37b2a915325aef69c14a4d977330bd95
-0,         14,         14,        1,   195348, 38d1c5584386d5ecfa6cd1b1a21bcf95
-0,         15,         15,        1,   195668, 0e079972d3c4b5c46a65a0a1968fe331
-0,         16,         16,        1,   194880, 845d57af36c419b1c97b414d03660d1c
-0,         17,         17,        1,   195168, 99aa1f4bb9830296b4a7fee9d99aa1d7
-0,         18,         18,        1,   194448, 918caa6252898799ea2e6767ccafb441
-0,         19,         19,        1,   194360, b4bb3cf4c1429b55419c06e103b26a58
-0,         20,         20,        1,   193700, ee116403cab362226270fedf7cffa61f
-0,         21,         21,        1,   194008, b0308dc9b17f84247e5ee34ce0ae2055
-0,         22,         22,        1,   194096, 884e9a814fc05a05347b8d73268babe7
-0,         23,         23,        1,   195092, 9942a01b617fc2d628805c181bc2c981
-0,         24,         24,        1,   195196, 6c86d3e2bd936ece2ae1f5a80811794c
-0,         25,         25,        1,   194912, d16b92cff2bcf988497961e8f0e3fd04
-0,         26,         26,        1,   194768, a34ab92404a55688b0d23bffe43caeae
-0,         27,         27,        1,   194360, af1048eb8a9f1c9e111bf3a7988b6fc7
-0,         28,         28,        1,   193568, 701a8d4fdc0bb486b443005fa6374312
-0,         29,         29,        1,   193560, 4a8ae0776ebde106cb8c7665130a7ad0
-0,         30,         30,        1,   193960, c18dd6ef654fa74c1de408028ce321e8
-0,         31,         31,        1,   194780, 291d914b3ecd5e070d7c1d3088bb7c07
-0,         32,         32,        1,   194648, 5a0b8dd59921b84c34517c123a1e9b4f
-0,         33,         33,        1,   194944, fd9f5dacb693b447ee9ba2d7442476e1
-0,         34,         34,        1,   194736, 494a861598f740612b7024bcd79d8e1d
-0,         35,         35,        1,   194776, 1cb7f8ad6f8dea5809ab57b113a9d71e
-0,         36,         36,        1,   194784, 6fd7b74e417650f719181b18bef46918
-0,         37,         37,        1,   194912, db0d9b73a53b36452711e1e3b423e66e
-0,         38,         38,        1,   194152, e2f332679c7e636b377ed8a853bfba9c
-0,         39,         39,        1,   194172, d92749f7c7d6776df96f12b947f76698
-0,         40,         40,        1,   193608, a8c4a092ea7150729c8d4fc1a4d52479
-0,         41,         41,        1,   194260, 894f7d88f405dd2a5966ff2cac697480
-0,         42,         42,        1,   193916, 717cf2e1f09908b96fd6931cd6e2397c
-0,         43,         43,        1,   194140, 0e37397d73bb07c71a8fcb9f0977ccbf
-0,         44,         44,        1,   193656, 7f6b6095cd4e15a66b09006710a6bcbe
-0,         45,         45,        1,   192964, 5683af73e72782f026dbb6b58abdba9b
-0,         46,         46,        1,   192640, 195ae6b83bfa182e0d4f378f6430246c
-0,         47,         47,        1,   192584, f5f315730639b3848bdb19591b354737
-0,         48,         48,        1,   192360, 884e8b06ed2888995a73a857909199b2
-0,         49,         49,        1,   191916, b4b7c5006c28cbc441738f6f5b4a4657
+0,          0,          0,        1,   195096, 29ad3287ab4d7f4d46968c6d38ba049b
+0,          1,          1,        1,   195040, 2c7b4f5f0aee96dca6dc30ce01b3c74d
+0,          2,          2,        1,   196044, 7ffc6ab3c4a2eee436ef6a59c72ffb04
+0,          3,          3,        1,   195256, f4453470d77c246cbb30d00c13512359
+0,          4,          4,        1,   194856, b84c4d56bf28033db539e4e0cad3d342
+0,          5,          5,        1,   195360, d2d3371b96f679f9b7c62d98b5d54af9
+0,          6,          6,        1,   195184, 8e3782bc12b24023a5899eb4806ffed6
+0,          7,          7,        1,   194812, 4fcf24a0660606304c58c93db2baf7de
+0,          8,          8,        1,   195040, 6ab57a9dcb4c99df7848a0971335a6b4
+0,          9,          9,        1,   195476, 66a3d66c3dc2f5b0847266a21927fa77
+0,         10,         10,        1,   195056, 530b251a8497af21bc56cd73af5c7ddf
+0,         11,         11,        1,   195072, 2904d24eca3db9734ed78dc8d557a334
+0,         12,         12,        1,   194232, 97566b596b113bf94a12ee1c02058a95
+0,         13,         13,        1,   195072, dceefd5df6efc5fefc8cfa1543b1a20e
+0,         14,         14,        1,   195348, d5b75f298fa6d474435333467b3497ae
+0,         15,         15,        1,   195668, 519f63be313f311cbb3fb48970a19f15
+0,         16,         16,        1,   194880, ab2da22767f540f8adea7e43dd6c1d0c
+0,         17,         17,        1,   195168, 667b85c19dd2d8ae105594f1294297b9
+0,         18,         18,        1,   194448, 575bc4b46f6158e76e503e8028902aaa
+0,         19,         19,        1,   194360, 851acbaf04c464689c8e2c4af3b9ed14
+0,         20,         20,        1,   193700, 1a477e0d665dcd088da6edeef77f21b1
+0,         21,         21,        1,   194008, b0d752c2201235e51ba0bbb59046fa60
+0,         22,         22,        1,   194096, 099df2b23c41ee54a6bd11aa6c92c390
+0,         23,         23,        1,   195092, e4d4dc89b8afba245355cec57ddcae40
+0,         24,         24,        1,   195196, 070c27e0499cf0210d729242ebc1a24e
+0,         25,         25,        1,   194912, 0fb78b7892035ecbec6ee9be6a13831c
+0,         26,         26,        1,   194768, 3ff6a05e68d6e33eeea22232e71bdf9a
+0,         27,         27,        1,   194360, 3828288e90a780d0c338ba5ab046aaa5
+0,         28,         28,        1,   193568, 60afb0ae9e6cbc9d8e4081764de7b4e6
+0,         29,         29,        1,   193560, 6b22fcfce4bff96b2afcb891f4fa9cf3
+0,         30,         30,        1,   193960, cae9eddb4464627fdc4413c3b5159575
+0,         31,         31,        1,   194780, 9e3d730fb835d3acaf92b7be368ea89e
+0,         32,         32,        1,   194648, 1ac7f5ae1b392ee8630266317a1818df
+0,         33,         33,        1,   194944, 374142509500017bbc29e157569bca2f
+0,         34,         34,        1,   194736, 0072a43b8de988683340c81e5bd4dba6
+0,         35,         35,        1,   194776, d5add7706f49a6a2f8d6bf3ed0ce3410
+0,         36,         36,        1,   194784, 7a1d38bc73fd293afef5fbcf9d34decd
+0,         37,         37,        1,   194912, 695e2d4c5d613245d591ae58100323bd
+0,         38,         38,        1,   194152, d4c9adb4f6340bc5f10b5b13f71d07bd
+0,         39,         39,        1,   194172, 0c7419c5c550e784e01a8c9927ecf59a
+0,         40,         40,        1,   193608, 4abff529172476d76c2956179041b2e4
+0,         41,         41,        1,   194260, dfa07971b01032b6a653d0d6715ffa8c
+0,         42,         42,        1,   193916, 6ffe1e68c74d51ea0cba0ede10b0f6f0
+0,         43,         43,        1,   194140, 46e18d23810193dd352fcc49b7c5ef6e
+0,         44,         44,        1,   193656, 4339d3e8b9dbeb376a1e19c4b86824f3
+0,         45,         45,        1,   192964, ff4680c71688f9944cd494105d2ab0b5
+0,         46,         46,        1,   192640, 62ce4b6d3311c34c73c6af1399fedfdc
+0,         47,         47,        1,   192584, f71b06a232a1a62a45ddac80c6f75090
+0,         48,         48,        1,   192360, 6642b9838eb32ed81d4d10a46ab9f954
+0,         49,         49,        1,   191916, d3ed1686383cfa7130ecc17c1ab52432
diff --git a/tests/ref/fate/utvideoenc_rgba_none b/tests/ref/fate/utvideoenc_rgba_none
index 02be4f7..555409f 100644
--- a/tests/ref/fate/utvideoenc_rgba_none
+++ b/tests/ref/fate/utvideoenc_rgba_none
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   301316, bfe075b7078cfe1359a8552fbe923767
-0,          1,          1,        1,   301328, 783be9f8f3d65b1866c7e9eb36813af2
-0,          2,          2,        1,   301104, e804e9bfd29ccfed1e909ff493178e29
-0,          3,          3,        1,   301164, 1c6668dc6eddeed62c0627f5d8b74c74
-0,          4,          4,        1,   301172, e5a2419ce223319bacd25ab42563b3d0
-0,          5,          5,        1,   301196, 1cd2aebeef673cde021cc32f19da61ae
-0,          6,          6,        1,   301204, 92460dcf4b204b7f042fb5548926142d
-0,          7,          7,        1,   301304, 9e02e73af250894d0a70b8302e2a349b
-0,          8,          8,        1,   301340, b1099bab3781e8934da3f8824f3eabf3
-0,          9,          9,        1,   301304, 23703b6f5faef024db78c204f4f016df
-0,         10,         10,        1,   301204, 3dfedda7e6ac5e1df7c7db2538bb5667
-0,         11,         11,        1,   301172, 1929487a395f4458be2d3d559582c7ff
-0,         12,         12,        1,   301308, 2cbd939e8ec8c2a7c3b999f02dca1f99
-0,         13,         13,        1,   301224, c839438bbf5ecd0e77860ab5ef01c19a
-0,         14,         14,        1,   301128, e8e24e4c453189628f3457fc56b45274
-0,         15,         15,        1,   301140, 005fa92d2e911c815c94550b5697ab40
-0,         16,         16,        1,   301280, ad26c44eedcef529b637380bba92d004
-0,         17,         17,        1,   301336, f67da01ad2209d1a245a9a1f80f4781a
-0,         18,         18,        1,   301452, b96a1ee83eb9b61a63292641c88ac62a
-0,         19,         19,        1,   301488, 300324211d8e4e4327aa4668da1a2511
-0,         20,         20,        1,   301440, 94fb5eb08f6b23394a9e6de57fe439fc
-0,         21,         21,        1,   301440, def06258ffdf0311114cab91538b8cd5
-0,         22,         22,        1,   301376, 6e242d13067c772ef8a05a4a7be51c9e
-0,         23,         23,        1,   301320, a6352be0046375d3df0f793e80a69d94
-0,         24,         24,        1,   301392, 008d9fb5ab787eadc81afa0f5c088052
-0,         25,         25,        1,   301404, 43a23b69f94286eaba5f6fe904014b13
-0,         26,         26,        1,   301348, 354a30651494f5ada404bbe2cde1dc65
-0,         27,         27,        1,   301492, 5c827680e386ebe591110894800d9d50
-0,         28,         28,        1,   301412, 6ae936785862350f686767acaa647a1a
-0,         29,         29,        1,   301484, 615e46fa8bdda14f60b5dfde990f051b
-0,         30,         30,        1,   301484, c3a99f4503551c24a83a60bc2da3b063
-0,         31,         31,        1,   301420, 06bee7377677bbd779245fd016270180
-0,         32,         32,        1,   301380, 1ec529e39255d3a96dbab53b47a8e5d2
-0,         33,         33,        1,   301360, 935978f44e381ed380f2c738c5908183
-0,         34,         34,        1,   301260, 27fb378f3767bacbc069a8a77dd8f52d
-0,         35,         35,        1,   301416, 11659bb1a5101f9b8958cc598ec554ea
-0,         36,         36,        1,   301492, be3afc7b7e2e1374d60fbed3355d6af1
-0,         37,         37,        1,   301488, bff39eab8f0cc5ee1060525cfe63bfbd
-0,         38,         38,        1,   301556, 314b34091a3c3b175a438330a8204bde
-0,         39,         39,        1,   301556, 1b19b73d8e442351f733a1a3cbce7f16
-0,         40,         40,        1,   301568, f222cfb256bed61a599f32d6c9b89d61
-0,         41,         41,        1,   301528, 880301f5786ce0e9f2fe5dcabe7c110d
-0,         42,         42,        1,   301604, 46c1c6a3309dce483e394673528cdd93
-0,         43,         43,        1,   301568, 563e160316ed6a118f7827acf705c423
-0,         44,         44,        1,   301552, 2f4cd23161c635a621f7f52de6e137e0
-0,         45,         45,        1,   301604, cbc5e8448db03a40ff6dc9bc97eef8b7
-0,         46,         46,        1,   301692, eadbc626d1f5e24eff337cc3991816dd
-0,         47,         47,        1,   301700, 6e5ca4187a062587ec16615e26241269
-0,         48,         48,        1,   301720, 3bde6793c623d1c59893ae4a7f451ea6
-0,         49,         49,        1,   301704, f6a71c49300df97817dbbf10b2d5dbbf
+0,          0,          0,        1,   301312, 6912d70f7c20db0b5079a99443ffe65c
+0,          1,          1,        1,   301328, 53f1b7d3c2f87ecfe9c9d305771421c5
+0,          2,          2,        1,   301100, 7040f2b50dc10b2565fa899ba007983d
+0,          3,          3,        1,   301164, 2bfe87a43842b21b083c166a5fcae979
+0,          4,          4,        1,   301172, e6535559b9cafb81d0f5312e6982228f
+0,          5,          5,        1,   301196, 899d3b7f4daca28b8d08fd80b9732332
+0,          6,          6,        1,   301204, 9ba8d921eb9345b9b90e5ec690cedbc6
+0,          7,          7,        1,   301304, 89d5758e5a4966d28fa3e6811822c9e6
+0,          8,          8,        1,   301336, b3f805d45e2cba1f3273fdc30e3d3d9c
+0,          9,          9,        1,   301304, 83c9ce5fdf5b20b29fc787ae20c5aa8f
+0,         10,         10,        1,   301204, 2cb730d551309ac307b69fb1e0f0bcbb
+0,         11,         11,        1,   301172, dc5d09bbd04e7b0a20521e67dbbad5f2
+0,         12,         12,        1,   301304, 9e08281b8be73b732b2793f7ffcf3bd4
+0,         13,         13,        1,   301224, 430fa7e9cc87e9292811601473bb03f9
+0,         14,         14,        1,   301128, 32eab97914c2f165e270e42e3c348ea0
+0,         15,         15,        1,   301140, c38233a19e22cc41957cd5a2e13bbca0
+0,         16,         16,        1,   301280, b87e1697217b744404d7998ec3dfac80
+0,         17,         17,        1,   301332, 231912bca1a1d4b54bc7ad392ca437c5
+0,         18,         18,        1,   301452, 30ce746afa3750735872fc9f2680e5b0
+0,         19,         19,        1,   301484, 9a56d219bcfb153190d17c8d89a0c5e3
+0,         20,         20,        1,   301440, c864010df06930259e712f7029a428b4
+0,         21,         21,        1,   301440, 1a4b6bf6557c65d5f088829602440819
+0,         22,         22,        1,   301376, f0ce8402bf00fcde4399da2f4088cd9f
+0,         23,         23,        1,   301320, 27d296bfd2df72c2fcf790098d2129cd
+0,         24,         24,        1,   301388, 0e78fec341c4d137959491e53ab23d92
+0,         25,         25,        1,   301404, 1ec3ca66bd6005cb754c00e346cdd895
+0,         26,         26,        1,   301348, b78ad47e42cfa510ab92d3ffc99371cf
+0,         27,         27,        1,   301492, 558f35abf593bf29a82e6353c75052d2
+0,         28,         28,        1,   301412, f44dae5d90ac9907b8847db0966e8d0b
+0,         29,         29,        1,   301484, 40d87d4e7c51bc2b3dede754c25e1b7e
+0,         30,         30,        1,   301484, 15dda8edd88e97f3db294bce9397e681
+0,         31,         31,        1,   301420, ff1dd12c16b295c83098a6b0135bd951
+0,         32,         32,        1,   301380, a290b1944381632a50fbb680f3f1af9e
+0,         33,         33,        1,   301356, 73d66b8546ac0698975af841dcea7a4c
+0,         34,         34,        1,   301260, 408ab0a50a74e7aaf196a202fd781892
+0,         35,         35,        1,   301412, bde264649818ed761d74281bf92a871e
+0,         36,         36,        1,   301492, c3612f4a8a748ffd6b43ccf24b2db821
+0,         37,         37,        1,   301488, 068ec12d90d1236e367caaf87f14da03
+0,         38,         38,        1,   301556, 000ee987cce47ab701e743d21a6607e6
+0,         39,         39,        1,   301556, 41277aa578fe7367c138a70b532bdf59
+0,         40,         40,        1,   301568, ebf086337aedfac24afc5c17715424d2
+0,         41,         41,        1,   301528, d8f0c31897748dfc761033f237f31f7f
+0,         42,         42,        1,   301604, 50b67f1d579eb8e7c5e0bdc438bf0ee2
+0,         43,         43,        1,   301568, 8297516127bb32a4326d6a859b2d8407
+0,         44,         44,        1,   301552, 1f9e1272e7249467631c4b9bd88bddcf
+0,         45,         45,        1,   301604, d835d90e9fc37583978c053bab5a96ed
+0,         46,         46,        1,   301692, fcb67990a58d25bff135fcc970714c4a
+0,         47,         47,        1,   301700, a4b0a26ed1626a4e46effa7987a32034
+0,         48,         48,        1,   301720, 44d53eab1be166c9bcc4b7b8bc3f80c9
+0,         49,         49,        1,   301704, 34314d5b44ea555b7d52958dec489fde
diff --git a/tests/ref/fate/utvideoenc_yuv420_left b/tests/ref/fate/utvideoenc_yuv420_left
index fe6c3c5..cec5a28 100644
--- a/tests/ref/fate/utvideoenc_yuv420_left
+++ b/tests/ref/fate/utvideoenc_yuv420_left
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,    59820, db20782033a18141a292da3f1a1c1782
-0,          1,          1,        1,    60040, c2f90e3de0c305ab8aac2530e3cd0e41
-0,          2,          2,        1,    61072, 97b0337a4185ef9d8e2533649860ad9a
-0,          3,          3,        1,    59680, 876d24900ef83e7958c9a1e54c82f330
-0,          4,          4,        1,    58620, 7732915d2a50f38951d46e36dcd49236
-0,          5,          5,        1,    60276, 343ef35f003da592451cab1ffbf158aa
-0,          6,          6,        1,    60504, 6823f1ef02f27719bb602911aa8caab5
-0,          7,          7,        1,    59916, 5f9ce306dc27d84d1af6d378b385c715
-0,          8,          8,        1,    60104, bac83cb16811318ad602ff391fdc94c7
-0,          9,          9,        1,    60352, bbd85ee4ccaad1b30b74d9edd1916291
-0,         10,         10,        1,    60324, 950230449f907a0615139fe2e1033a47
-0,         11,         11,        1,    60312, 8ba4355ecf4d738524bd331b98e87af7
-0,         12,         12,        1,    59196, 1efcac9ee097b0e027cc4e9d9d61037c
-0,         13,         13,        1,    59684, 9815ca06f7a99fb648f8f2856441517f
-0,         14,         14,        1,    61028, e4d684a1106cf78cd19ed87bd7ff7bab
-0,         15,         15,        1,    61116, 60f20615fb500d1baf9b1d07aa0f62f4
-0,         16,         16,        1,    60096, 35bc9f5e7f8a34c4221840f556d99df8
-0,         17,         17,        1,    59900, c8f756e698eeff9b55d83319f96865ce
-0,         18,         18,        1,    59424, 3ac4bb99ded21039ec65b1959c27347e
-0,         19,         19,        1,    59100, ff576160ae91bd8466f6d33b5750cce9
-0,         20,         20,        1,    58768, 86ed0e0c1a0f23ee6f3beabd0cc5691d
-0,         21,         21,        1,    58604, c0674d3c5973ff503e736a984326b42d
-0,         22,         22,        1,    58984, ec47ecc40d18b5e5216572db7aca4399
-0,         23,         23,        1,    59724, 119c234e452012e4475d09698e859dbc
-0,         24,         24,        1,    60688, 6720b72beefcdaa5355a68b763b8c7ca
-0,         25,         25,        1,    59768, 2dc4e643f97f9123842836df17a165ce
-0,         26,         26,        1,    59116, 3660544cdd5c0424578aa2cf6edc93d5
-0,         27,         27,        1,    58776, 465d3d35793fd088644746fc2b941a3c
-0,         28,         28,        1,    56948, c452face29e359c118cb206b8a99330e
-0,         29,         29,        1,    56984, d8c15040ca27d8cbf5e0f4a9464de289
-0,         30,         30,        1,    58172, 930839ebaa292a9f3348da3ba58a8c1f
-0,         31,         31,        1,    59008, bb9d062bf494bc1d4a0056dd8790bb25
-0,         32,         32,        1,    59568, e3f0f969063c614f7fefbc0269c4c029
-0,         33,         33,        1,    61276, f2e98cab7a320a9748c943910d0eda1d
-0,         34,         34,        1,    60056, 6875b10061cb1c303a18f186d65247ed
-0,         35,         35,        1,    59272, ad3f45ed83560479904c6395f857c95b
-0,         36,         36,        1,    58592, eca4f8faa40a737f56f6e492d98845c1
-0,         37,         37,        1,    58764, fa68a3723ba5b965532768b41dc73b60
-0,         38,         38,        1,    58300, 741a2ae174d721e3f3c0d13e54132095
-0,         39,         39,        1,    58260, 3546ddc2620a4c9fa415c0252a5eb9a4
-0,         40,         40,        1,    57324, f11c6053a5448e9b4830ef4fe833e5de
-0,         41,         41,        1,    58988, 6ae00a0b48f5ecdafcfd958684a21bcb
-0,         42,         42,        1,    58828, 6239ee212ca7decde8ad4cb304f0f786
-0,         43,         43,        1,    58736, 279226528c101b94f4e458151e7f5383
-0,         44,         44,        1,    58160, 2e8427fd4f232a7798488dfbbbc93db0
-0,         45,         45,        1,    56796, fab0929df1bfa6d4f09d962defaa58e7
-0,         46,         46,        1,    55932, 71da16ee5673bdbc5b69f01da23725d3
-0,         47,         47,        1,    56368, 20a7d362adb0f920f792106d034630fe
-0,         48,         48,        1,    56424, ba44ca273348efefafb5e73df81e26e9
-0,         49,         49,        1,    55508, e6df309da7552a2676e82f1f4644a694
+0,          0,          0,        1,    59796, a7136363bc4b9ac663178e5c7f24bae7
+0,          1,          1,        1,    60012, d296cf24776234599e22526598de838c
+0,          2,          2,        1,    61040, e889f81df51b75acf8131de97f9da4e3
+0,          3,          3,        1,    59656, a63c343139b1117260cf6f790ba87968
+0,          4,          4,        1,    58592, e2170222ac38ddc0703f5b537b4beb79
+0,          5,          5,        1,    60248, 0ea350ecf7d8a440b06a60550b5dfa4c
+0,          6,          6,        1,    60480, 792694fa65994c407fd76d06fdbbdc34
+0,          7,          7,        1,    59888, eaef81fd1fa459feb9a3b15817c861a4
+0,          8,          8,        1,    60080, 610a75f3c275ffef75006fb862642993
+0,          9,          9,        1,    60320, 1e1cc244d2ea6b259d06384d1a95cc89
+0,         10,         10,        1,    60300, ddbb7eb36b73cd4f1dc28ded5217952e
+0,         11,         11,        1,    60288, 13f14eed47e1c4fec9f99b47316f82b6
+0,         12,         12,        1,    59172, c7c205489a3b389290f2c56e66bf8ddb
+0,         13,         13,        1,    59664, 81eead1a1fe199e4b66e9bc2f04ac892
+0,         14,         14,        1,    61004, d02e17515451d4259d7179741d208b28
+0,         15,         15,        1,    61088, 4f1c9877caf59dc5ebf5646fe98b3ef5
+0,         16,         16,        1,    60072, 5c4c41d25e9aa0da07da89475275513b
+0,         17,         17,        1,    59876, aeeb1f7a68a23f9fd0503831bfeb2ed1
+0,         18,         18,        1,    59396, 154d2a0717aeb78e47e20bbc9d4aa69a
+0,         19,         19,        1,    59076, 3fdcb2330689aed91d92d515a9eb015a
+0,         20,         20,        1,    58740, 71a054852adaf0da188550fd77ae2069
+0,         21,         21,        1,    58584, 403746356fd559e9bace9bb37557e58e
+0,         22,         22,        1,    58952, 1a3d80d21e00ca5ce8c378da373c65d8
+0,         23,         23,        1,    59696, f66ace9c237d6ee91a4c23a957fde2a1
+0,         24,         24,        1,    60664, 69e6f45d9adf351650648b3fd6fc41b8
+0,         25,         25,        1,    59748, ed9e5524584eb0438f88e12af331009e
+0,         26,         26,        1,    59088, 4325aa8c838b5793364c6ab6ed904d84
+0,         27,         27,        1,    58752, 46a17359055b7ac3285c845af9701c74
+0,         28,         28,        1,    56928, a1fb544e10ee9806c80b5b80d85ef813
+0,         29,         29,        1,    56960, e17a9082644d542b3d589346d3421c51
+0,         30,         30,        1,    58140, f5ae6688db909252b67c3fbe62d783ff
+0,         31,         31,        1,    58980, 71a7053ff0857fa0651e2b8c5626598c
+0,         32,         32,        1,    59548, 60b3d97b4f3893b791894968b7586e99
+0,         33,         33,        1,    61248, ceb9cccd0327ae4c52d8a2cf009d15f7
+0,         34,         34,        1,    60032, ea2ce622422c4efa41069707b231fd52
+0,         35,         35,        1,    59252, b891818e1aba1e29c23fecbf405b03c0
+0,         36,         36,        1,    58568, 0aec4492ddb9608bf217f8b828378680
+0,         37,         37,        1,    58744, 0f218bdc62102270393e7973caa251aa
+0,         38,         38,        1,    58280, 89c93e37590d56c7c32f4955e59b7c54
+0,         39,         39,        1,    58236, 9575ac5076c1c347069b48aa8cb6381f
+0,         40,         40,        1,    57308, e4ede1a1ab344b39399b231fec0cf420
+0,         41,         41,        1,    58964, 9f9c800eddf1fbb093c7ae1320f2ec19
+0,         42,         42,        1,    58800, 9729551ff14d80a3b647bb9688e38cd1
+0,         43,         43,        1,    58716, f0d81b0b287bbe1decd18eac2873166b
+0,         44,         44,        1,    58136, e6aa11b60f8be9cd3d3e9d5c22b326ff
+0,         45,         45,        1,    56772, c3dd97f5d29511103b80edfcf39d2fe3
+0,         46,         46,        1,    55904, ae67aee10ae3b04ac2dc19158bb9c69f
+0,         47,         47,        1,    56344, f3c9c3dd5238c1f29f9204e1efeb6235
+0,         48,         48,        1,    56396, 93b8a198ac7c7118da0b581a50633df9
+0,         49,         49,        1,    55480, b2907ad8da8252dd6403b72eeb49b141
diff --git a/tests/ref/fate/utvideoenc_yuv420_median b/tests/ref/fate/utvideoenc_yuv420_median
index b5288d3..ddd074b 100644
--- a/tests/ref/fate/utvideoenc_yuv420_median
+++ b/tests/ref/fate/utvideoenc_yuv420_median
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,    62916, e8443c85edaa534618869eb50a54d8ee
-0,          1,          1,        1,    62856, 0b9504992a19ffbe5a1f12d823a15f0f
-0,          2,          2,        1,    64112, 609f1d6cfd57fc87565f3078c48c06f0
-0,          3,          3,        1,    62748, e57217dc1de96a6c9494ceea126e71a1
-0,          4,          4,        1,    61696, d3bba27c92b9cc4503274dffdcb7de3e
-0,          5,          5,        1,    63320, f84c26950c6aa2a29af17a923723ea18
-0,          6,          6,        1,    63556, 2f2b60577616ea085b77b0154b8eb935
-0,          7,          7,        1,    62812, c2cd5836f6ea3bcbf5affdfb623e1aab
-0,          8,          8,        1,    63204, 010dd4c0a5681507f96502abfe1a8b55
-0,          9,          9,        1,    63516, 69b945a7afd1efad7c473c1113f66c5f
-0,         10,         10,        1,    63356, 05c2acb737b75e96d757fbd4270d9109
-0,         11,         11,        1,    63364, f63b1184912c6f25fce3f5fd166fc90c
-0,         12,         12,        1,    62416, 3bb6161920400a4535188103e5ee9b64
-0,         13,         13,        1,    62980, 6482cec5429083c3759588a2d81c2dc8
-0,         14,         14,        1,    63964, 8567a41bc0e6a6acef2c5b9991a370da
-0,         15,         15,        1,    64044, a80fc046d821bb7d3b1d0732b5528a0d
-0,         16,         16,        1,    62976, 623d43978c0255d7ad94dbbb08911c74
-0,         17,         17,        1,    63084, 1459781283da8935125776f157db1fc9
-0,         18,         18,        1,    62436, e9c751f7690590affd7e85775fe21fca
-0,         19,         19,        1,    62168, 948822a3568448032d2d0742031c6a33
-0,         20,         20,        1,    61724, 724e7f5384f8a9c7a03cba49abc1bef1
-0,         21,         21,        1,    61736, 3b0a781f947af472439852fd70d7e235
-0,         22,         22,        1,    62000, 0e41647e42cecc7644a42e3d96f34cfb
-0,         23,         23,        1,    62848, 1fc1813e6b44d573f3327533c161a262
-0,         24,         24,        1,    63504, 96c17ee6abc37fa6db608716d02b8ac7
-0,         25,         25,        1,    62732, 2cbeaaddd16d4686a3abdfaba7309107
-0,         26,         26,        1,    62288, b7263b7119853aee434290fb3cd30a16
-0,         27,         27,        1,    61788, e915b09f59360c1ffb92c2b80499e020
-0,         28,         28,        1,    60272, 0aab9182c5fb047344bdae541fb1befb
-0,         29,         29,        1,    60268, bc1bf979670850c37ab31e329dd909a6
-0,         30,         30,        1,    61268, 74a62d3c1363ea38d2a8687ac39a4112
-0,         31,         31,        1,    62264, 5b689d5835044b1582f664c1a3c3f336
-0,         32,         32,        1,    62668, 10638908ec2b59e0b75168ed7cce4141
-0,         33,         33,        1,    63864, 78bac64552f0a2450fc87fe8153a6774
-0,         34,         34,        1,    63032, befb82196b484ec3bb9d0eb57beb3c42
-0,         35,         35,        1,    62512, aea5110ce91111c9ce93865a82134125
-0,         36,         36,        1,    61772, 2744a404a3448db9db6214c688b4ed9f
-0,         37,         37,        1,    62044, c712fbf903d575fd4adc926470f99799
-0,         38,         38,        1,    61780, 97664d4ecf4492e0b8aa3ca025730158
-0,         39,         39,        1,    61724, 4b89a0cb4f99398e412eb4c4b8268fad
-0,         40,         40,        1,    60560, db2de1312d493917ebd805972a0d0086
-0,         41,         41,        1,    62284, b85ab454e9599ca9b52fc4e3ad2faaec
-0,         42,         42,        1,    61864, ae717317d753d6334d317abff4c51491
-0,         43,         43,        1,    61728, 70d6c4c68a112fde735195c5177123c8
-0,         44,         44,        1,    61252, 14b9a9e1686a1787991dfd40ed871184
-0,         45,         45,        1,    60224, ad1094331e5b2c27381e4e1781baa85c
-0,         46,         46,        1,    59416, a7b2ef933eaf0c8706bcf1f1f06dc01e
-0,         47,         47,        1,    59656, 89ff0f1c3ded6aa335f9c3ee66dead8e
-0,         48,         48,        1,    59616, 5fc6c44004562ed74b536374059a8bdd
-0,         49,         49,        1,    58836, feb32d803459a18e487f87c02ec1bf5c
+0,          0,          0,        1,    62876, c21650baa099fb2dfd35d4f8ddce16d1
+0,          1,          1,        1,    62832, 034a1996d13c15ee0bf482ddc398aac9
+0,          2,          2,        1,    64076, 1f39fd5fc926195b90a3374682a80eac
+0,          3,          3,        1,    62724, 4007f9193b9e3b19e991497bb73679ab
+0,          4,          4,        1,    61664, 3e86c3a2cd07807433ed7f46ede959ec
+0,          5,          5,        1,    63296, 4e7d334f3713ecc07fca77c945c758b7
+0,          6,          6,        1,    63528, 15b8f92a1d84e77521c539a9a02379ac
+0,          7,          7,        1,    62784, 07ead8344bde0c0a060c3313f39cf92e
+0,          8,          8,        1,    63176, 0a8d9329d7f66008a0d41c6ba4749b09
+0,          9,          9,        1,    63492, eefa6ba63516dd2ff9fb0a4e81169977
+0,         10,         10,        1,    63328, 991fd8fcb392774d11b1766cc1dbe0d7
+0,         11,         11,        1,    63328, e2745a89e96a7f0c641fa25a6ed2da83
+0,         12,         12,        1,    62384, 2dd300b64a32ae2d6fb65e88128e5147
+0,         13,         13,        1,    62944, 076331793373fe43cd213ae56fc19e0f
+0,         14,         14,        1,    63932, 37b6b50e7219ba0e593e4ce1de02a864
+0,         15,         15,        1,    64020, ed66d034f605621266054a54714feec9
+0,         16,         16,        1,    62940, fb6a921a8551db3d33b0a24e7e9a3ced
+0,         17,         17,        1,    63052, abac96a9e0128efd4362ec28e66464d2
+0,         18,         18,        1,    62408, 0351d4c9579779dbb398f68f0e4e02e4
+0,         19,         19,        1,    62148, b4f7ed147a1326cf5adae50af6db56ca
+0,         20,         20,        1,    61692, 48a9cdf3d4600768feca7616614dc46d
+0,         21,         21,        1,    61704, d8e6c2daa6ae50caf7d5ee9324812389
+0,         22,         22,        1,    61964, 3983f0bf566d206cde013982722d4453
+0,         23,         23,        1,    62812, b12b44c4df634f608380e2bfb26b717d
+0,         24,         24,        1,    63480, 30ad52da50e0d4f1fc811d24a01e777b
+0,         25,         25,        1,    62708, 2827bd4dec0fa603eaf92bae8c4deb72
+0,         26,         26,        1,    62252, fd7c3a5bcaf83701dd7f2da225f3ce69
+0,         27,         27,        1,    61752, ea9740f3a5f52baaa923e245f649f7c7
+0,         28,         28,        1,    60248, cf4a142fc28437cca11ad1d127a2948f
+0,         29,         29,        1,    60232, 6cd0b708ec41cd10357f8944ae8288bd
+0,         30,         30,        1,    61240, c4a44f902a295f3a6e85276087adcbc0
+0,         31,         31,        1,    62228, a36d5eafa03b784f35303b131ac5d3a0
+0,         32,         32,        1,    62636, e09ca8f58690f991e1ce3986c2864924
+0,         33,         33,        1,    63840, 830de5062cb9c8be8844118c7db4bcef
+0,         34,         34,        1,    62996, e008d4add85b595840a2773d01465147
+0,         35,         35,        1,    62480, 04a38e7c231697aa97e5a401d4329105
+0,         36,         36,        1,    61744, 4cb276703869f45a6ab798e53e615fc0
+0,         37,         37,        1,    62012, dfca9b52389b01d750a4b94d10a8e2e0
+0,         38,         38,        1,    61748, bf2ec90514c268440313fecf68e2f41f
+0,         39,         39,        1,    61688, 99f1c565dc76bde773ccb91b8dbb3860
+0,         40,         40,        1,    60528, 7b66ad4e019964ead8ed1a9eadad9721
+0,         41,         41,        1,    62248, 795e2a8351ac78bc482e341be3af98bb
+0,         42,         42,        1,    61832, d7fc01097c5ec0247d20727aec2adab6
+0,         43,         43,        1,    61688, 4492ffefcaed530fce3221f4bb61ef80
+0,         44,         44,        1,    61216, d9a91c3007686b7166f297bc1dddb9a9
+0,         45,         45,        1,    60192, 7c808c46b376c49fa3d5bd5ba97fce1c
+0,         46,         46,        1,    59388, 6d2a2a72d14ff5c800295de6b2e23465
+0,         47,         47,        1,    59620, 5c1aa124bb6ffb9cd33a6430bf07ea9f
+0,         48,         48,        1,    59584, efc1012cca50e509856e406622d760fe
+0,         49,         49,        1,    58800, fa8563a0bc6022f8f5c5fc70ce0d46f3
diff --git a/tests/ref/fate/utvideoenc_yuv420_none b/tests/ref/fate/utvideoenc_yuv420_none
index 9813391..555eee2 100644
--- a/tests/ref/fate/utvideoenc_yuv420_none
+++ b/tests/ref/fate/utvideoenc_yuv420_none
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   144516, 8b4c8d3ae74da0306cbb7c6709f16ec5
-0,          1,          1,        1,   144504, 041bcfd819fec93241baa2797e2c97c2
-0,          2,          2,        1,   144384, 9a3efab6db020060e877bcd68f6153b5
-0,          3,          3,        1,   144428, d650148e1b29eaf2ada94bad59214b06
-0,          4,          4,        1,   144596, 8a070f1c074181d3ebc8ff93d8218c91
-0,          5,          5,        1,   144456, d53157d4f6d4c97452061b05e9bd4589
-0,          6,          6,        1,   144424, fc15bb77ea351dcb8790f6a228d9a899
-0,          7,          7,        1,   144416, 36d9f2deea7d96c8c694a0464fbfb6f6
-0,          8,          8,        1,   144328, 07850891af07fd9491b7d4957309c59a
-0,          9,          9,        1,   144328, 98ec846ba6a928f1f8feaceffdc2ca47
-0,         10,         10,        1,   144252, eecbc81aeef72a557681fff3ade0e1ea
-0,         11,         11,        1,   144176, 716f45f97fbbee271c756b51c1442a04
-0,         12,         12,        1,   144460, 4b53f968b67f0a3fcc751551685dc616
-0,         13,         13,        1,   144320, a0989eba4abc67fc3f97286b5ebb6b6f
-0,         14,         14,        1,   144256, b565b531adde9de04ac8dd18441f4b10
-0,         15,         15,        1,   144240, 93866939e1799cc7a638e684d583c3fc
-0,         16,         16,        1,   144320, 6289947dfb7c1c56f7f38c293325b08d
-0,         17,         17,        1,   144360, d348dba72b01e64687d9772c6e408f16
-0,         18,         18,        1,   144356, a7285a69d3351c0ff37fc4e052e4445e
-0,         19,         19,        1,   144368, 6fc446cf8455acec4422dc87c9c3fd9a
-0,         20,         20,        1,   144388, 54d73f606e23d78675cf505a2e877e2f
-0,         21,         21,        1,   144424, 2d55f4fc58a611608c814bf624671103
-0,         22,         22,        1,   144352, ccd87aa111216071adba2ac6867e5a70
-0,         23,         23,        1,   144384, 5a159db181501aafac455eb6ec37645b
-0,         24,         24,        1,   144384, 0cd8523c88838fb4e59200d324206fc5
-0,         25,         25,        1,   144328, 7a537ae88e6b91ee637415fc1bdfdfb3
-0,         26,         26,        1,   144416, 2beb77ab1ec30d463442ba1b0b995a22
-0,         27,         27,        1,   144524, 032209c413e2906cea0ac1f229e731b0
-0,         28,         28,        1,   144680, 370581756f4df5ecb7127d9bad3f219d
-0,         29,         29,        1,   144656, b43f514332e63452f08cfcecca2c2820
-0,         30,         30,        1,   144500, 8debbbdf18df1a82161356f93aa5da22
-0,         31,         31,        1,   144504, 04b1d817b10d4529d0108311e131a395
-0,         32,         32,        1,   144380, f64c22d9b822b2b7744ed17dc93c0fea
-0,         33,         33,        1,   144176, b7fe2a1d51921876dc3294a28a8b73f4
-0,         34,         34,        1,   144188, bdbaf871cf4f0f9762d487719bd5d70d
-0,         35,         35,        1,   144356, b90c993423632180fcc924fb687a6e2b
-0,         36,         36,        1,   144556, 2d88e31846cdb41ab346dd94fc473854
-0,         37,         37,        1,   144524, 95b4f8749ee5dbeda91c0e650b13c250
-0,         38,         38,        1,   144540, c34b4aa099ec50f3f10d52670a8e3d2e
-0,         39,         39,        1,   144460, a4f79bdebaed29910d148293c6909766
-0,         40,         40,        1,   144540, c359072ba35fb124eb6da7a74e7d746b
-0,         41,         41,        1,   144356, 6c759d3621208fe60018d0bac631fbe3
-0,         42,         42,        1,   144340, 421a7417934af7f46c121c45b7ee9d28
-0,         43,         43,        1,   144436, 7954efe1687e9d823018aef879ac5958
-0,         44,         44,        1,   144488, 338bfdc6ac006a086c19ba256226d4f8
-0,         45,         45,        1,   144604, ff31f6f7706968bb150c98fd17ce59ac
-0,         46,         46,        1,   144600, a532db975d958b0b17406b3e7cae78a5
-0,         47,         47,        1,   144520, b1c007e9f754c2ddf039f3d4767cdcb1
-0,         48,         48,        1,   144472, a03290fb08b8b054f18fee2209f5bd13
-0,         49,         49,        1,   144508, 7d9eda64f4fc11c95dcd63a1130cb5ab
+0,          0,          0,        1,   144508, 83af3948090ebb44a0091815e4edc61e
+0,          1,          1,        1,   144496, 950742e357ee489fcda4f783b8df3b4c
+0,          2,          2,        1,   144376, 4b818cf0a50e9338fea26101073e445e
+0,          3,          3,        1,   144420, 0335c3b97dca65e9118a12e3cceb1e24
+0,          4,          4,        1,   144588, a9f7e6cb2d9129d97342c4eb67349aa8
+0,          5,          5,        1,   144444, b956115c6bab18a01594103bcb2ba9e0
+0,          6,          6,        1,   144408, 81761b3135ab3f4d5efd6f2790b6b70f
+0,          7,          7,        1,   144408, 566c53ee4126e31b78f6572292f97f55
+0,          8,          8,        1,   144320, 0c24c346a65cb945f8d804817f67f42e
+0,          9,          9,        1,   144316, 7920264636a6933c776b41567181f2d9
+0,         10,         10,        1,   144248, c1c1b10356f27fca35e03fdc67dd1638
+0,         11,         11,        1,   144168, 5a590c4f603aaddd01d4efbf5571426e
+0,         12,         12,        1,   144452, 10459aa8f48f7e8e0ebc03f15f795acd
+0,         13,         13,        1,   144312, 436658612212e706c4ed9f4bdcf45f38
+0,         14,         14,        1,   144252, 7a5612c485c501669e27039c435ac5d3
+0,         15,         15,        1,   144232, 81018c3b49d376d69af71a4ee2c910a9
+0,         16,         16,        1,   144312, 4280abfc59ee6cfddbf45474a42c5cd5
+0,         17,         17,        1,   144348, 0a48ba8ad15f7431830feeb2ac0f2118
+0,         18,         18,        1,   144356, 6c8f0a396195a840a225aca3ada427ff
+0,         19,         19,        1,   144360, 4a0a959d9c3ebb293d94ef37b4f7f19e
+0,         20,         20,        1,   144380, e61b564126a2d8255a7457b70af74514
+0,         21,         21,        1,   144416, fe434ae640e63fb774d6e7c864d02e49
+0,         22,         22,        1,   144344, 9e106257c640b66ca31919668c4da334
+0,         23,         23,        1,   144376, c0cdd6b2aa1bf4d89c82b602f09fa2e0
+0,         24,         24,        1,   144376, 8be60289a2a4c22355b3bd43f2f85fe4
+0,         25,         25,        1,   144320, 124127b8fcacfa5c5e0ee7f0324da7a0
+0,         26,         26,        1,   144408, a5639aedbdbfff34f36dda8872992cde
+0,         27,         27,        1,   144516, fbe3cf39fd764e6a3d05c63be35a4d58
+0,         28,         28,        1,   144676, 6ee82422712e11740d7b003eab69d5bd
+0,         29,         29,        1,   144648, e5f446835709b1baaca14af3aa6fbbb7
+0,         30,         30,        1,   144496, 3b23fb07c528ad824e9c8f10143ae06a
+0,         31,         31,        1,   144496, 4e4dddd0c72f9d3a555b8d32ae82c10e
+0,         32,         32,        1,   144372, 1dfe88fbe0c1193bb04a06840dfab155
+0,         33,         33,        1,   144168, e03b3d67fcbbde71c6985955feebabfe
+0,         34,         34,        1,   144180, 5d5a24b49cff98cbb85f69b547b43e87
+0,         35,         35,        1,   144348, bb9172de1a4c7a00fe80bb673484781b
+0,         36,         36,        1,   144544, 7824a6c4bb8b919306904be6f67f2736
+0,         37,         37,        1,   144516, 456c3884817909b4cca38f8138c079d4
+0,         38,         38,        1,   144532, 0e63cf833a33a9fac9e5969342817fc2
+0,         39,         39,        1,   144452, 9c0155cdd0a5ae42b79475ab47ba87f7
+0,         40,         40,        1,   144532, eefee218d181e74a80a1d2ec27932e91
+0,         41,         41,        1,   144348, fbd4fd20565350dd927005af590912ff
+0,         42,         42,        1,   144332, eac5c49230fb807c81e8a0c9e9721697
+0,         43,         43,        1,   144428, 9ee3fe8be6c4477b0d8ff1d91049634e
+0,         44,         44,        1,   144480, b58fb19549e4497e82491a26d67c1567
+0,         45,         45,        1,   144596, 1c8059bf14f4df3da9db6b89f87a52b9
+0,         46,         46,        1,   144592, db8a5750beb049ea835895d23e924cab
+0,         47,         47,        1,   144512, 58c69889edb9bdab219d698f6a44d2cf
+0,         48,         48,        1,   144468, 3da8e5ae1f1ff9da72abd3d2ac87a7b9
+0,         49,         49,        1,   144500, 4f80ccdb6f9549190ed72407dd7af2c1
diff --git a/tests/ref/fate/utvideoenc_yuv422_left b/tests/ref/fate/utvideoenc_yuv422_left
index 3fe834f..d9afc2c 100644
--- a/tests/ref/fate/utvideoenc_yuv422_left
+++ b/tests/ref/fate/utvideoenc_yuv422_left
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,    91796, 4c8297f7f28046125c690222c3214896
-0,          1,          1,        1,    92148, ba8df4e34baa5679735980d32ab4dcbb
-0,          2,          2,        1,    93280, 82eebd80efb688a5da6779237895a254
-0,          3,          3,        1,    91620, 481fe4261a0dcdc7179753c786425a0e
-0,          4,          4,        1,    90468, 8fe1fde928524130efd2adb3e5dbfc14
-0,          5,          5,        1,    92192, 937ccb039db2a25448c3bf4f7d8dcc82
-0,          6,          6,        1,    92208, 07f66e4f355f84c3a1ed85add165bda1
-0,          7,          7,        1,    91880, 7a680775a71c0db8a7b06545d489a016
-0,          8,          8,        1,    91964, 8c91d9908ec476e6457155fbbc20551a
-0,          9,          9,        1,    92320, 99577a047b9b6c9d18370c636e093cb9
-0,         10,         10,        1,    92316, 6ee62076a75b457c358aa3da45638c6c
-0,         11,         11,        1,    92284, 6c82d57786e0e1010944e6a1c535252e
-0,         12,         12,        1,    90932, 0e5bb1fd031143e8001852bd42a2d708
-0,         13,         13,        1,    91620, c590080aebc74c4d64090161a43146b5
-0,         14,         14,        1,    93124, 4bf756daa31db1a64148ace4e8ec8a17
-0,         15,         15,        1,    93152, d9b9edf360b36ac3f54bfd835596294f
-0,         16,         16,        1,    92088, efd7436e924eacb2177021bd6b676410
-0,         17,         17,        1,    91828, d8434dd3ceb3fb8026e380cec20aeda7
-0,         18,         18,        1,    91216, c546d8e3a45395f8037280750dc344fd
-0,         19,         19,        1,    90892, 9912d9aaf53dc505cf0be17a4013e893
-0,         20,         20,        1,    90416, fecb67be6f80a2c368c3e0c864033363
-0,         21,         21,        1,    90288, 9a32f067364f8ac7d145826e5b1af157
-0,         22,         22,        1,    90824, 4feb2146c84616ac093a21805961896c
-0,         23,         23,        1,    91592, 57f7ca368fd6e578d19a95e4270b932b
-0,         24,         24,        1,    92692, 71da3aa27ac6abdbef33c933b3ada49e
-0,         25,         25,        1,    91588, 21b36844ab555ca2c8565b16a6cd3cda
-0,         26,         26,        1,    90940, c0d4e047f4bcb7741dda13dc093f1ff7
-0,         27,         27,        1,    90548, 61e91e2723e3d402efd4166a8d537799
-0,         28,         28,        1,    88380, 142ca8a9b848583906a6872559f6afe4
-0,         29,         29,        1,    88412, 12ed09ec8ab4b0c933f306eab12bbb2e
-0,         30,         30,        1,    89856, b12d495e747e44c624f2f1b54da68488
-0,         31,         31,        1,    90764, 6593de0da477a1acef29231046c4e036
-0,         32,         32,        1,    91328, 305797e1e5cd779192e71d0c7c62d590
-0,         33,         33,        1,    93216, 560d8fd4f3ed691c7a32243412156eae
-0,         34,         34,        1,    92044, fee3c383804680b4d7b4516ccd399c70
-0,         35,         35,        1,    91148, 78683ab3ed20af28d7a70a6ec46cb51b
-0,         36,         36,        1,    90376, 9c42b34763c52af7d4bedbf7f4188c26
-0,         37,         37,        1,    90632, a5796dd685a695292fa324565dfd5475
-0,         38,         38,        1,    89844, 0c05fd10b989657cf6cb6142dada5dc9
-0,         39,         39,        1,    89808, 0524cf03f546d2694cf3743d27da6b85
-0,         40,         40,        1,    88900, 0e45ddf73bf25ba03b3ddf4c8fcbe710
-0,         41,         41,        1,    90584, 4af285ba46599e268926613f23cffea9
-0,         42,         42,        1,    90560, c94bfa84bf549464025aef51c3084abb
-0,         43,         43,        1,    90424, c3abba4ca926d22094b58fb3c87d301f
-0,         44,         44,        1,    89796, f765800cb70f5601481077442e5e8255
-0,         45,         45,        1,    88132, 0670d35d34a3fd6926dd3c5771f8929a
-0,         46,         46,        1,    87176, 0068a72ac885f81a37e65b0a9c460d26
-0,         47,         47,        1,    87644, 999cd5da8ac0bceb83132ea027ef998e
-0,         48,         48,        1,    87712, b7f38fb617599a6fbb7304790e7a8249
-0,         49,         49,        1,    86632, fce71c4a72c805cbfe08dbf187f20c5a
+0,          0,          0,        1,    91788, e14e576f1f9abd095f13ceca627adb59
+0,          1,          1,        1,    92140, 4b7db11c2d35fa91ff1b6f65c184e3fa
+0,          2,          2,        1,    93268, 6ef5cb83a4db2afbf14467cbc4b6c4f7
+0,          3,          3,        1,    91612, f08ae129a2867a08770bdb61381bf366
+0,          4,          4,        1,    90456, ed3edabe09b9f6cfbf452a08dafa556d
+0,          5,          5,        1,    92180, a0760e91b3af27a7c1bb0264f128ca50
+0,          6,          6,        1,    92200, 2fda4c87dfa34206173e852b67841406
+0,          7,          7,        1,    91872, 944e7c88c7ebeae9e1efac859ea4fe7d
+0,          8,          8,        1,    91952, 34112ec99382b80c397d26cef93573c7
+0,          9,          9,        1,    92312, 63698686348ccd80cc920e9e73a195aa
+0,         10,         10,        1,    92308, 6a675d6678b7b78fac6375d44f325d06
+0,         11,         11,        1,    92272, bc1401e0acd3864ad30711ca4b61578d
+0,         12,         12,        1,    90920, cd7ecda23a4f312abe71bd3fc28af3e7
+0,         13,         13,        1,    91612, 91ebce52e2594296349476f3bf6a6408
+0,         14,         14,        1,    93112, 34be111d02130ed7389c0c62768041de
+0,         15,         15,        1,    93140, e1b440cad63dbf8ff034f424cd1194cc
+0,         16,         16,        1,    92080, 94181fde8563af0b6810f778f6b1d92b
+0,         17,         17,        1,    91816, ed0997f9b341fc3ab6a8c5d9a4067bd2
+0,         18,         18,        1,    91204, d833b0c3b3dfe60b079b746c4c3aed7f
+0,         19,         19,        1,    90880, 0d4702abb70d7cbc8843a96e3a74117a
+0,         20,         20,        1,    90408, 409860b79fe10ffbffd581c19445fa91
+0,         21,         21,        1,    90280, 5360fa4f1afd8c2c55cf33675a928a14
+0,         22,         22,        1,    90808, fe2ca67d315fb1d8806ee04470d06378
+0,         23,         23,        1,    91584, 84168a6fe20ee00ddd9f54ce8f1e1810
+0,         24,         24,        1,    92684, 6fb3d7193d3bb5400c449717358827e0
+0,         25,         25,        1,    91580, acd2aa86dbae6e133183e5bf2ca389a3
+0,         26,         26,        1,    90928, cc0df9c8e00df5985e39ae486eb59eff
+0,         27,         27,        1,    90536, 8f9d294190c03435f3cee266cca2a31a
+0,         28,         28,        1,    88364, ae9564ad4eb3c1fc03e4befb4b1e719e
+0,         29,         29,        1,    88404, 745a16947203cd7017900b137fca70eb
+0,         30,         30,        1,    89844, 1b7e75be9edb25ffe91c54e270eb8f46
+0,         31,         31,        1,    90752, 9ff03fa3b28f2c84a4da41779e0a2aa4
+0,         32,         32,        1,    91320, 409ed4c3eced8793760505cf8095f51a
+0,         33,         33,        1,    93204, 70865d89c930919474500befe0e2ec3f
+0,         34,         34,        1,    92036, 7388d12a6954b9870749ab6a5f05815f
+0,         35,         35,        1,    91144, b47bfdaec4c00177a9258a03e864400f
+0,         36,         36,        1,    90368, 418df89a063f66cfbb1f806d68aca6a2
+0,         37,         37,        1,    90628, 3f90314ab7311ad0f4bd4808d62a1e80
+0,         38,         38,        1,    89836, 414f90d0efc65b993f6e1fc8f2c1d860
+0,         39,         39,        1,    89792, a07cf9fc580ffee5d61c241dce116ae6
+0,         40,         40,        1,    88896, 3d583229da6b7455b6876843b3b747c7
+0,         41,         41,        1,    90572, cbef36619e7c8e62fc21a735c7701514
+0,         42,         42,        1,    90544, 144816eaeaf0412fca6bf40e6f3e6d3f
+0,         43,         43,        1,    90416, 76f0d9dd1f4fd00b68223dd7c6024b2e
+0,         44,         44,        1,    89788, ce0b66e45ed3c50124680f84614c5ac0
+0,         45,         45,        1,    88120, 5d59770b187109e2e6824f5cb42b9b73
+0,         46,         46,        1,    87164, bb52ce20f4a21ef82a2cc3316ba69e1c
+0,         47,         47,        1,    87632, 87f44c3ecebd09b2ffa94d8ace01f3f3
+0,         48,         48,        1,    87700, cbaed2ac667bdc9aa17ffc68ebaea790
+0,         49,         49,        1,    86624, 21797bc69a89976f9b4b552603a63267
diff --git a/tests/ref/fate/utvideoenc_yuv422_median b/tests/ref/fate/utvideoenc_yuv422_median
index ade2923..e1c8fcd 100644
--- a/tests/ref/fate/utvideoenc_yuv422_median
+++ b/tests/ref/fate/utvideoenc_yuv422_median
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,    89780, 3e91243736f0d8c96ec01e53e1a0ca1a
-0,          1,          1,        1,    89692, 29e8beef70f920150f3405328130c1f4
-0,          2,          2,        1,    90912, 8ef86647ae9006cb888248b346091603
-0,          3,          3,        1,    89568, 9af0abff68a9e66adf177e626c88477d
-0,          4,          4,        1,    88552, 7149af41c6213afb224d5e483b6a0771
-0,          5,          5,        1,    90188, 7a8818cdf4c5cfb961a84e6f0affb333
-0,          6,          6,        1,    90220, 10a59f9d437355a7cfcc87800ad58f55
-0,          7,          7,        1,    89432, e7ade031b0cfe8ba5720ca82c0b5134a
-0,          8,          8,        1,    89892, 21b4ae6db7817caec958caa6d993d08e
-0,          9,          9,        1,    90404, 90fda92c74b423705233620283ff11b0
-0,         10,         10,        1,    90028, efa74c6cea3e5b4795a570e4ecec8359
-0,         11,         11,        1,    90056, ac9426560a82c563184be68c9a044245
-0,         12,         12,        1,    89116, 523dfd6c2d8732b4c709270648bd3fc6
-0,         13,         13,        1,    89820, d6829b4ac96790f3b38d54465afc281c
-0,         14,         14,        1,    90720, b2d2130e5a677a292c6ac5ee715fb08b
-0,         15,         15,        1,    90900, fd63286afaa80474c069910091c48d82
-0,         16,         16,        1,    89892, dce4344b86b6f6452da8e5c582817bbb
-0,         17,         17,        1,    89896, b4b4afffba0a9b93b8677695b0246096
-0,         18,         18,        1,    89172, c842bcea2ae28737b696b7066f032c21
-0,         19,         19,        1,    88920, a90e2a3326ad821a972ed5663e4db3dd
-0,         20,         20,        1,    88380, f6e80319224d2d1164f8c92465434d83
-0,         21,         21,        1,    88508, 5338f8602eb21ec8c98f9a94c614c6ae
-0,         22,         22,        1,    88636, b5342f8831e4c75755097230ea56caf4
-0,         23,         23,        1,    89764, 6cdfe5b2789b960cd24592f0d4c8e450
-0,         24,         24,        1,    90252, 317353d115124d89d7648b9381221fe9
-0,         25,         25,        1,    89500, add22cae4aaec687340ad45cf7adfd1a
-0,         26,         26,        1,    89036, 0a2b14e5ceec26f9498d1caea1767870
-0,         27,         27,        1,    88676, b0978d633f9f1aacbf1bfd1a779e654a
-0,         28,         28,        1,    87092, a5aed642ca45d403a89b12d9405128e1
-0,         29,         29,        1,    87168, bbf30ee8918be97766c50219886b2045
-0,         30,         30,        1,    88084, 5913cbc1c3adebb6f9f230b24f3a3eee
-0,         31,         31,        1,    89056, 9f86fd1126923de5bbcf57b3e4c19824
-0,         32,         32,        1,    89372, fb6b14b16c900523dad7c8be2969776e
-0,         33,         33,        1,    90372, 7c95a49abadaa5914d71a3b8ccd069fc
-0,         34,         34,        1,    89732, 7d7ad876e67daa9aafa88e5117c5db2a
-0,         35,         35,        1,    89264, c546830ac81b57f4284fd9567687adbf
-0,         36,         36,        1,    88692, 640a270b1c421f5864264a22c4dcef61
-0,         37,         37,        1,    89044, b46a8cdedadd85dadc999bb71e9c9a1b
-0,         38,         38,        1,    88672, 5a906c0ecf4d818fe8baccbaa0fd306e
-0,         39,         39,        1,    88492, 80ce9360ac56c79cce311392db8fcf76
-0,         40,         40,        1,    87372, 34e03634ebdf41d5faeb93a8322feec5
-0,         41,         41,        1,    88896, edff2238d908325809b07b542b6f95d7
-0,         42,         42,        1,    88604, 575ac8566e144c94c5c09cbaae333262
-0,         43,         43,        1,    88424, a42e08d0624a5fbb91aee7c1030c442c
-0,         44,         44,        1,    87932, eee99a04e2934a541a6bad33ccd64c38
-0,         45,         45,        1,    86916, 37ba014aa01c2cf100e719e67bec00c1
-0,         46,         46,        1,    86316, e5b94ffcb55d82d2fd5a3a31084b00fe
-0,         47,         47,        1,    86428, 96cea3d74a0c8ff2702ca2bbccf9ec6e
-0,         48,         48,        1,    86228, 1390793cf7369b808abfefb53affb800
-0,         49,         49,        1,    85284, 89d0772c948e95af1f78ae2a0dd341c8
+0,          0,          0,        1,    89732, 698174b0d0d68e98774363ca7926f6e1
+0,          1,          1,        1,    89652, f0789b7c32ef44207dfc5a454bb5ccee
+0,          2,          2,        1,    90868, 6df1dcb1957efca736e88adfbad8557b
+0,          3,          3,        1,    89520, 9cee942e7f03a97cd2cdf8cea429fb31
+0,          4,          4,        1,    88508, 798f4e8c00f4d949882cdc3f89be0bf6
+0,          5,          5,        1,    90140, 70fc5f4f240b0ca30332b0f37632d1cb
+0,          6,          6,        1,    90176, 1c2747fc56d5eb70ff8f4f361cb70610
+0,          7,          7,        1,    89392, bd8764124753f784d5984cd829c8ca90
+0,          8,          8,        1,    89848, 1dc30ed23a8634f6b2661ac8583fe8cc
+0,          9,          9,        1,    90356, 0910ae7c3a6924031453f458009354fa
+0,         10,         10,        1,    89984, 61da06bf1ed667b54ee749c69ab031eb
+0,         11,         11,        1,    90012, 11d05491f86014f19b34cab3111a95d2
+0,         12,         12,        1,    89072, 4598f16727472daa1710c39b4840efdc
+0,         13,         13,        1,    89776, ed6c0da32acf621e9f79b76a3afaa280
+0,         14,         14,        1,    90680, 05f3a9232bc14ca8721ef04243177a20
+0,         15,         15,        1,    90852, e4deff113ea503656efecb227f6b702a
+0,         16,         16,        1,    89844, 5ee70abd6f1d2e5c55117b28840327e6
+0,         17,         17,        1,    89852, 6721997ae0563009adbdeed31f437ce4
+0,         18,         18,        1,    89144, 8a40f0af74afb4ff05e6242a41c7789f
+0,         19,         19,        1,    88880, 8824c3526629a30fbf9a53abc448844c
+0,         20,         20,        1,    88344, 18a656127a16bb50113bb2e98b11a26d
+0,         21,         21,        1,    88464, 19a3b9510e6347a7782f695b48736991
+0,         22,         22,        1,    88588, e3d22d15b4812c26214db546ce17c7dd
+0,         23,         23,        1,    89720, afe800faa0188dff0899cd83af6301d6
+0,         24,         24,        1,    90216, a9d9ece70c978c595e1d724a0f644f56
+0,         25,         25,        1,    89456, 9bf3e8f87f072d55095acc9351a09f45
+0,         26,         26,        1,    88992, 40d1b1858f1ba0bebd9eb9f5263cda9d
+0,         27,         27,        1,    88632, 1df39644ac99bccab4c6bd72498284c4
+0,         28,         28,        1,    87048, 9983cd95307c1bab653170ba2aecdc55
+0,         29,         29,        1,    87120, 006b48403af94a0bc5121900b48af9c1
+0,         30,         30,        1,    88044, 652d17c8805de56cd83824d99888822e
+0,         31,         31,        1,    89016, 652a971973d088b5098a06b216137151
+0,         32,         32,        1,    89324, 2775a087358ead0281ce188f4006050d
+0,         33,         33,        1,    90328, 564e119bdf5f3c780c0613990ca487db
+0,         34,         34,        1,    89684, 1f5fb4ec22234aee771791b71881b630
+0,         35,         35,        1,    89216, dde7a003cfe5b47f9be407f28dcdfb3f
+0,         36,         36,        1,    88644, 1fed2d2f72ec9488181a06606aaf4e12
+0,         37,         37,        1,    89000, 8f916bee0ad8efe8d3572e4af4bf4b8e
+0,         38,         38,        1,    88628, d802fb5634d3acd72a96bd99c22dd566
+0,         39,         39,        1,    88448, a4d438df349f1f2ff1620fb965d08513
+0,         40,         40,        1,    87332, 18a8527dcfc5c1fa8ae7aa8a83781d2d
+0,         41,         41,        1,    88856, 63179f19a5d60d3ea9fa14c00ca5c493
+0,         42,         42,        1,    88556, 92b568c24ed53e823b54fa6c064d16ac
+0,         43,         43,        1,    88380, c204b982e3ab7fc1aa6b1b132c4ae462
+0,         44,         44,        1,    87888, 45f1cd55d454a0b611b047b6e5172b30
+0,         45,         45,        1,    86876, c668ac58b31feb51902b78fdfcdc1064
+0,         46,         46,        1,    86272, 24a94950de7065cb236e52502c9c8e67
+0,         47,         47,        1,    86388, 51dad738cd8896616694a4fb52b47fbd
+0,         48,         48,        1,    86188, dc6709cd2722eb8dd927f405c6a30915
+0,         49,         49,        1,    85244, 68f40045a250ab0799a7325aa16ec80c
diff --git a/tests/ref/fate/utvideoenc_yuv422_none b/tests/ref/fate/utvideoenc_yuv422_none
index 69c4b65..ca77177 100644
--- a/tests/ref/fate/utvideoenc_yuv422_none
+++ b/tests/ref/fate/utvideoenc_yuv422_none
@@ -1,51 +1,51 @@
 #tb 0: 1/25
-0,          0,          0,        1,   191804, f2daaab85ecc8227c958e44b3456fae8
-0,          1,          1,        1,   191828, 80c599b8f3c58db35f181059aec90869
-0,          2,          2,        1,   191672, 081ab347067e368c3e92ac1faa2ea933
-0,          3,          3,        1,   191700, 198425dac62730270553fef97ac3ef38
-0,          4,          4,        1,   191976, a667de6623f7d11b7f7d9fe40abd578e
-0,          5,          5,        1,   191764, 1ba21a4be3b534b6a651640bf12b63cf
-0,          6,          6,        1,   191720, 9d63ddee2324fc96727607c5980709f9
-0,          7,          7,        1,   191692, b86bfa6ecfeee06775495a170a7c8bb9
-0,          8,          8,        1,   191584, a86a64a1d383ef072f2fc17e7976d048
-0,          9,          9,        1,   191556, 8faea41b0af5ab445eb65f34727d0cfa
-0,         10,         10,        1,   191476, e20631164f65ad55642216c8cdfb414c
-0,         11,         11,        1,   191280, daf024a253a90b8b6f59b570ca63356e
-0,         12,         12,        1,   191700, fae65d15784413cbc36c6e06f9f3d868
-0,         13,         13,        1,   191432, aa799f4516b2e48e706da61e5a8fc1f3
-0,         14,         14,        1,   191420, 61d1e5031a2b5e6819c8531aa34fe4c1
-0,         15,         15,        1,   191416, f3e1e60fb59f4e9f1d9e98c0eee42c3c
-0,         16,         16,        1,   191504, 2aae6896ded24fb31898249ea0d99355
-0,         17,         17,        1,   191592, 1d48065c7e445284b8bd49f4fbe20668
-0,         18,         18,        1,   191612, 37ffbf09c3f44f4b954253627453bd3a
-0,         19,         19,        1,   191624, fa479dd1f2a412115d95bb8389f61be8
-0,         20,         20,        1,   191600, 4642ec6004690fbeb3c28a41198faeb3
-0,         21,         21,        1,   191664, 4ffff6d4daba3a27c0493826b4777b59
-0,         22,         22,        1,   191544, 9ba114162c29f537783770c2968cba9a
-0,         23,         23,        1,   191584, 56fa5cef18ff2b91677183e4063d94b7
-0,         24,         24,        1,   191648, 854aa515d70326a6e6230403f6e46cd8
-0,         25,         25,        1,   191528, 56a8493b14f553ea72d15414b349032c
-0,         26,         26,        1,   191644, 89a2e45e7c9a679a532054bfa4c621ce
-0,         27,         27,        1,   191808, 6a09e77d1581dd82b5013f05e32cffe9
-0,         28,         28,        1,   192036, 4375e948a177a7d9242e521671c6083f
-0,         29,         29,        1,   191968, ec50a1d34a2cd973510bc5059137dc0a
-0,         30,         30,        1,   191740, c0c96ae654189fb0db4862584d102db8
-0,         31,         31,        1,   191792, 7243b58b1a72213ad95230f5ac8bbe72
-0,         32,         32,        1,   191636, ae0e180bd5f1b79cf2862865e5a5b89e
-0,         33,         33,        1,   191408, 85f18294eef023a0ff995fd75d22da47
-0,         34,         34,        1,   191332, ff1c7c120d5f10027ff8e07fef2ca459
-0,         35,         35,        1,   191552, 36dd28b3ed917e1a9dd460fbafccbd42
-0,         36,         36,        1,   191860, c864fe9b3ed74afc68d1206b3be60717
-0,         37,         37,        1,   191832, 3135be8c92e17e8dfbe713f2119407a8
-0,         38,         38,        1,   191816, 1a19ec6f037aecd3523879a071dd6b7d
-0,         39,         39,        1,   191708, ff5394fbaf21e31025ccb71189274d67
-0,         40,         40,        1,   191816, 39fd9856c94d386633ac796fbe159904
-0,         41,         41,        1,   191552, 2f5b8e24915c66a5213e8a587368c538
-0,         42,         42,        1,   191556, 28a1056a5f58b2916d8151def7e102af
-0,         43,         43,        1,   191704, 30000db8f792b0b762d4c9ea1b442d0b
-0,         44,         44,        1,   191792, 013de9696edc2cdfcd81d239be89a988
-0,         45,         45,        1,   191952, 44ed3f7914e4c2e7b51ecdcefbef36db
-0,         46,         46,        1,   191924, 764583676fd2595cedf13d61c4d4339a
-0,         47,         47,        1,   191788, bb29d4f35e3d05e7851c986ba410a551
-0,         48,         48,        1,   191716, 2ade356badd31d5f2208c512c374671d
-0,         49,         49,        1,   191736, 29c0753eb219082c9f7dca220a4c50ec
+0,          0,          0,        1,   191800, 0e1d199f87997ba47e98596b6087d7d4
+0,          1,          1,        1,   191820, b35714d0635214095ac06d35da00ed32
+0,          2,          2,        1,   191668, 8336829e44f5b90034e5da33dcd27f1f
+0,          3,          3,        1,   191696, ebff701893f27b026fe6fec4a1cbd90b
+0,          4,          4,        1,   191976, c2729ecde4337a51192da71b0ef36e7d
+0,          5,          5,        1,   191760, e2ef2db5ef30019d5fd24cd32c696318
+0,          6,          6,        1,   191708, 638eb1c1b68bc9f4cc315ebdd3bd86f5
+0,          7,          7,        1,   191688, aca858d2cce189eb60012a33ea74d10b
+0,          8,          8,        1,   191576, aa933dea9aac9b61fea004747e3b8e6a
+0,          9,          9,        1,   191544, 6c410ec9e2492d464d439a58e6e338c3
+0,         10,         10,        1,   191472, 7c7661ff35671b3912b2b216bc6df478
+0,         11,         11,        1,   191280, 73c1ff53a0cd5c65eb2ae75a45efbf72
+0,         12,         12,        1,   191700, 201b0b4834878513e6e13bd9f5977a28
+0,         13,         13,        1,   191424, 0affff549b2da09c7852c5e8dbd1c84a
+0,         14,         14,        1,   191420, e0e80adf520953c4bc4033efc77b9092
+0,         15,         15,        1,   191408, 4fa22efbf2101b7f6bfffae227ce1d23
+0,         16,         16,        1,   191500, fef8df893234b38be36803d5f5656e16
+0,         17,         17,        1,   191580, 3585b500a77344fd87f8f18e3816f1a8
+0,         18,         18,        1,   191608, 419189483180612b72491dab5864c6e7
+0,         19,         19,        1,   191616, 197fa32c8a164eeea73defb7422657d1
+0,         20,         20,        1,   191596, a660a6c630f7e55c3ca2f9a37d599223
+0,         21,         21,        1,   191660, d98445b0387c3d54034f8defe1d03ea6
+0,         22,         22,        1,   191540, ef4522aa762b82d1c715805a779c7c1e
+0,         23,         23,        1,   191576, 32d109d2040c69b3944471b0bd399a65
+0,         24,         24,        1,   191636, 58e2f3a01de4175ba7f915e2d065ba36
+0,         25,         25,        1,   191524, 0989a64e78613cfc26124e195cfc0cde
+0,         26,         26,        1,   191640, b9e252a5c4583736a8ba248d15c429aa
+0,         27,         27,        1,   191800, 1541cccc66cb63d3e1ef675a16a1258e
+0,         28,         28,        1,   192028, 5dada6bf987738caebca210067d13c39
+0,         29,         29,        1,   191964, 8d55bb4a1464ac74364d4b1e416d4a0c
+0,         30,         30,        1,   191736, 88c279b9f3e96485f85dbca09177fe26
+0,         31,         31,        1,   191788, aa75795116428edb57dea8b54527e13b
+0,         32,         32,        1,   191636, aa45e4ec1fcc038ea2e48046e5047417
+0,         33,         33,        1,   191400, 7b2861b3ca8bfcdca010d859c0595e03
+0,         34,         34,        1,   191332, 956acfcc00661d9a9ba7575e8c1a011b
+0,         35,         35,        1,   191548, 3b5b7c3b9a6a5ebe10f178077a5fea4d
+0,         36,         36,        1,   191852, 835219e1689946f3e26457ffce197181
+0,         37,         37,        1,   191828, f67a1e4640472287baf194c02f24dc29
+0,         38,         38,        1,   191812, 978f44d430859044350ea20913ae4194
+0,         39,         39,        1,   191700, 92e21c9ded61f69f793c649eece071c4
+0,         40,         40,        1,   191812, 0a460bc35daad68e8042917f26dac542
+0,         41,         41,        1,   191548, 7c7a65b9257f9b4439002c5c414c401c
+0,         42,         42,        1,   191544, b03d903c46536dc336461827fd4d34db
+0,         43,         43,        1,   191700, 75b391d84b120e63ec229fcb48808d19
+0,         44,         44,        1,   191780, c953dcd42a8aa19eb4d4be0149894bbe
+0,         45,         45,        1,   191952, 64be44b2e21f8301f4234e32a10cb1c9
+0,         46,         46,        1,   191916, a6c805f651f3f57a84681b1aab6fe3ef
+0,         47,         47,        1,   191784, 9cc8db3cb63a026645f634aabc89c37b
+0,         48,         48,        1,   191716, e2f0c7543b3484a726411eac4e9a79cd
+0,         49,         49,        1,   191728, 50277180199917d1259e0cad42f52d4c
-- 
1.7.9.5



More information about the ffmpeg-devel mailing list