[FFmpeg-devel] [PATCH] fate/gif: create meaningful gif encoding tests.

Clément Bœsch ubitux at gmail.com
Thu Apr 18 18:57:29 CEST 2013


---
 tests/fate/gif.mak              |  11 +++
 tests/lavf-regression.sh        |  15 +---
 tests/ref/fate/gifenc-bgr4_byte | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/gifenc-bgr8      | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/gifenc-gray      | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/gifenc-pal8      | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/gifenc-rgb4_byte | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/gifenc-rgb8      | 174 ++++++++++++++++++++++++++++++++++++++++
 tests/ref/lavf/gif              |  21 -----
 9 files changed, 1056 insertions(+), 35 deletions(-)
 create mode 100644 tests/ref/fate/gifenc-bgr4_byte
 create mode 100644 tests/ref/fate/gifenc-bgr8
 create mode 100644 tests/ref/fate/gifenc-gray
 create mode 100644 tests/ref/fate/gifenc-pal8
 create mode 100644 tests/ref/fate/gifenc-rgb4_byte
 create mode 100644 tests/ref/fate/gifenc-rgb8

diff --git a/tests/fate/gif.mak b/tests/fate/gif.mak
index 722bd6e..110a067 100644
--- a/tests/fate/gif.mak
+++ b/tests/fate/gif.mak
@@ -10,6 +10,17 @@ fate-gif-disposal-restore: CMD = framecrc -i $(SAMPLES)/gif/banner2.gif -pix_fmt
 FATE_GIF += fate-gif-gray
 fate-gif-gray: CMD = framecrc -i $(SAMPLES)/gif/Newtons_cradle_animation_book_2.gif -pix_fmt bgra
 
+fate-gifenc%: fate-gif-color
+fate-gifenc%: PIXFMT = $(word 3, $(subst -, ,$(@)))
+fate-gifenc%: SRC = $(SAMPLES)/gif/tc217.gif
+fate-gifenc%: CMD = framecrc -i $(SRC) -c:v gif -pix_fmt $(PIXFMT)
+
+FATE_GIF_ENC_PIXFMT = rgb8 bgr8 rgb4_byte bgr4_byte gray pal8
+FATE_GIF_ENC-$(call ENCDEC, GIF, GIF) = $(FATE_GIF_ENC_PIXFMT:%=fate-gifenc-%)
+
+FATE_GIF += $(FATE_GIF_ENC-yes)
+fate-gifenc: $(FATE_GIF_ENC-yes)
+
 FATE_GIF-$(call DEMDEC, GIF, GIF) += $(FATE_GIF)
 
 FATE_SAMPLES_AVCONV += $(FATE_GIF-yes)
diff --git a/tests/lavf-regression.sh b/tests/lavf-regression.sh
index 1393909..196e965 100755
--- a/tests/lavf-regression.sh
+++ b/tests/lavf-regression.sh
@@ -49,11 +49,7 @@ do_image_formats()
 {
     outfile="$datadir/images/$1/"
     mkdir -p "$outfile"
-    if [ "$1" = "gif" ]; then
-        file=${outfile}02.$1
-    else
-        file=${outfile}%02d.$1
-    fi
+    file=${outfile}%02d.$1
     run_avconv $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $2 $ENC_OPTS -t 0.5 -y -qscale 10 $target_path/$file
     do_md5sum ${outfile}02.$1
     do_avconv_crc $file $DEC_OPTS -i $target_path/$file $3
@@ -184,18 +180,9 @@ do_streamed_images ppm
 fi
 
 if [ -n "$do_gif" ] ; then
-# this tests the gif muxer
 file=${outfile}lavf.gif
 do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $ENC_OPTS -t 1 -qscale 10 -pix_fmt rgb24
 do_avconv_crc $file $DEC_OPTS -i $target_path/$file -pix_fmt rgb24
-# and this the gif encoder
-do_image_formats gif "" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt rgb4_byte" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt bgr4_byte" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt rgb8" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt bgr8" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt gray" "-pix_fmt rgb24"
-do_image_formats gif "-pix_fmt pal8" "-pix_fmt rgb24"
 fi
 
 if [ -n "$do_yuv4mpeg" ] ; then
diff --git a/tests/ref/fate/gifenc-bgr4_byte b/tests/ref/fate/gifenc-bgr4_byte
new file mode 100644
index 0000000..7e86803
--- /dev/null
+++ b/tests/ref/fate/gifenc-bgr4_byte
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,      507, 0x91080fbf
+0,         10,         10,        1,      193, 0x1d7e4858
+0,         20,         20,        1,      130, 0xfe2d2987
+0,         30,         30,        1,      395, 0xf717a07e
+0,         40,         40,        1,      431, 0x940db956
+0,         50,         50,        1,      466, 0xb8dccc62
+0,         60,         60,        1,      542, 0x0ae8e79a
+0,         70,         70,        1,      597, 0x5baf0acf
+0,         80,         80,        1,      969, 0x87e2cc88
+0,         90,         90,        1,     1044, 0xd5daf5ef
+0,        100,        100,        1,     1185, 0xbcb62ceb
+0,        110,        110,        1,     1273, 0x15895efd
+0,        120,        120,        1,     1352, 0x53b287f7
+0,        130,        130,        1,     1428, 0x55c2a576
+0,        140,        140,        1,     1488, 0x65eacda9
+0,        150,        150,        1,     1428, 0xef6d8e92
+0,        160,        160,        1,     1709, 0xd59b38bd
+0,        170,        170,        1,     1834, 0xa7a6676f
+0,        180,        180,        1,     1933, 0xa9f5915f
+0,        190,        190,        1,     1944, 0x51f28eb4
+0,        200,        200,        1,     2170, 0xa28a0d4e
+0,        210,        210,        1,     2051, 0x893eb9bf
+0,        220,        220,        1,     2250, 0x32c2449c
+0,        230,        230,        1,     2334, 0x94bc4f85
+0,        240,        240,        1,     2267, 0x957d32eb
+0,        250,        250,        1,     2447, 0xb1098a71
+0,        260,        260,        1,     2552, 0xb38bb5d4
+0,        270,        270,        1,     2450, 0x30447fb7
+0,        280,        280,        1,     2893, 0x1dbc5e35
+0,        290,        290,        1,     2905, 0x3b495cac
+0,        300,        300,        1,     3158, 0xd4570380
+0,        310,        310,        1,     3276, 0xd30827f4
+0,        320,        320,        1,     3439, 0xcdac7c90
+0,        330,        330,        1,     3481, 0x561c6e32
+0,        340,        340,        1,     3641, 0xf314bfe5
+0,        350,        350,        1,     3727, 0x8e8ff2c3
+0,        360,        360,        1,     3826, 0x728f3cee
+0,        370,        370,        1,     3933, 0x29cb6577
+0,        380,        380,        1,     3944, 0xc9455d41
+0,        390,        390,        1,     4011, 0x141d88dd
+0,        400,        400,        1,     4119, 0x6d74b89b
+0,        410,        410,        1,     4132, 0x93da9bd7
+0,        420,        420,        1,     4332, 0xdabb38ff
+0,        430,        430,        1,     4400, 0xd49955a6
+0,        440,        440,        1,     4376, 0x674b0ffe
+0,        450,        450,        1,     4483, 0xd89c764c
+0,        460,        460,        1,     4623, 0xbb7ec92d
+0,        470,        470,        1,     4692, 0xaf8bf4c9
+0,        480,        480,        1,     4752, 0x8259213a
+0,        490,        490,        1,     4947, 0x29c786e3
+0,        500,        500,        1,     5076, 0x49f0bb0c
+0,        510,        510,        1,     5189, 0x5295fa2f
+0,        520,        520,        1,     5287, 0x3cc83668
+0,        530,        530,        1,     5414, 0x95bfb406
+0,        540,        540,        1,     5688, 0xbc080b7a
+0,        550,        550,        1,     5806, 0x756742d5
+0,        560,        560,        1,     5905, 0x2e668221
+0,        570,        570,        1,     6056, 0xe76bbf67
+0,        580,        580,        1,     6126, 0x9959e501
+0,        590,        590,        1,     6203, 0x4ea0be07
+0,        600,        600,        1,     6313, 0x1a4e1744
+0,        610,        610,        1,     6416, 0x6a5a1e08
+0,        620,        620,        1,     6471, 0xb2cb5000
+0,        630,        630,        1,     6552, 0x43d07883
+0,        640,        640,        1,     6650, 0xe993ae84
+0,        650,        650,        1,     6811, 0x1902fd8d
+0,        660,        660,        1,     6966, 0x324a604f
+0,        670,        670,        1,     7063, 0xbe2d7441
+0,        680,        680,        1,     7107, 0xf0a16cdf
+0,        690,        690,        1,     7163, 0x93747168
+0,        700,        700,        1,     7169, 0x0d0791d0
+0,        710,        710,        1,     7255, 0xa00bc770
+0,        720,        720,        1,     7355, 0xe3e9ef39
+0,        730,        730,        1,     7407, 0x392d0e75
+0,        740,        740,        1,     7485, 0xfd1c3a13
+0,        750,        750,        1,     7512, 0x31e84bce
+0,        760,        760,        1,     7495, 0xb340ec92
+0,        770,        770,        1,     7602, 0x75043f9d
+0,        780,        780,        1,     7677, 0x8e4972ea
+0,        790,        790,        1,     7824, 0x7aadda27
+0,        800,        800,        1,     7975, 0xb5510d88
+0,        810,        810,        1,     8093, 0xfa944446
+0,        820,        820,        1,     8249, 0x1da4671e
+0,        830,        830,        1,     8288, 0xbf2f9b73
+0,        840,        840,        1,     8418, 0xcec6ebe7
+0,        850,        850,        1,     8508, 0x8d852009
+0,        860,        860,        1,     8563, 0xfcdf2ea0
+0,        870,        870,        1,     8676, 0x2a567c4d
+0,        880,        880,        1,     8779, 0x40d77560
+0,        890,        890,        1,     8897, 0xf707c828
+0,        900,        900,        1,     9036, 0xd1401652
+0,        910,        910,        1,     9050, 0x46760af2
+0,        920,        920,        1,     9102, 0x177b2b76
+0,        930,        930,        1,     9207, 0x8f113246
+0,        940,        940,        1,     9227, 0xc4c03f9c
+0,        950,        950,        1,     9480, 0x9e26defd
+0,        960,        960,        1,     9548, 0x1a6cfb21
+0,        970,        970,        1,     9756, 0x0c547a64
+0,        980,        980,        1,     9884, 0x67db7d02
+0,        990,        990,        1,     9960, 0x3901d566
+0,       1000,       1000,        1,    10020, 0x45cd0035
+0,       1010,       1010,        1,    10107, 0x071d10de
+0,       1020,       1020,        1,    10268, 0x0d1f723e
+0,       1030,       1030,        1,    10409, 0xab71b500
+0,       1040,       1040,        1,    10512, 0xf415fc0d
+0,       1050,       1050,        1,    10667, 0xadd43de6
+0,       1060,       1060,        1,    10789, 0xaabcb5ba
+0,       1070,       1070,        1,    10807, 0x578564f1
+0,       1080,       1080,        1,    11051, 0x89e6bc1c
+0,       1090,       1090,        1,    11121, 0x68611ce7
+0,       1100,       1100,        1,    11243, 0xc2293d04
+0,       1110,       1110,        1,    11412, 0x430e92f4
+0,       1120,       1120,        1,    11446, 0x7da6be3a
+0,       1130,       1130,        1,    11592, 0x02d51db6
+0,       1140,       1140,        1,    11666, 0x78590e6c
+0,       1150,       1150,        1,    11767, 0xfdf54b91
+0,       1160,       1160,        1,    11805, 0x96eeb115
+0,       1170,       1170,        1,    11878, 0x387f9de3
+0,       1180,       1180,        1,    11980, 0xd93cbaca
+0,       1190,       1190,        1,    12065, 0xa504c7d1
+0,       1200,       1200,        1,    12142, 0xe9660a75
+0,       1210,       1210,        1,    12294, 0xd8627ea2
+0,       1220,       1220,        1,    12358, 0xf7ab4df0
+0,       1230,       1230,        1,    12415, 0xcf1a4811
+0,       1240,       1240,        1,    12484, 0x0c59905f
+0,       1250,       1250,        1,    12637, 0x220c0c94
+0,       1260,       1260,        1,    12705, 0xef421ab5
+0,       1270,       1270,        1,    12884, 0x3def62ad
+0,       1280,       1280,        1,    12934, 0xb469cd56
+0,       1290,       1290,        1,    13018, 0x4c66e202
+0,       1300,       1300,        1,    13120, 0x63e2d409
+0,       1310,       1310,        1,    13379, 0x30fc473b
+0,       1320,       1320,        1,    13442, 0x31f5a18d
+0,       1330,       1330,        1,    13496, 0x1374a646
+0,       1340,       1340,        1,    13638, 0x65a9cd1e
+0,       1350,       1350,        1,    13672, 0x55f0a47a
+0,       1360,       1360,        1,    13780, 0x5b931209
+0,       1370,       1370,        1,    14041, 0x65aa5a1c
+0,       1380,       1380,        1,    14177, 0x0982ccc2
+0,       1390,       1390,        1,    14386, 0x8dcc0c8d
+0,       1400,       1400,        1,    14464, 0x97f961d1
+0,       1410,       1410,        1,    14503, 0x337b31e0
+0,       1420,       1420,        1,    14620, 0x7be29621
+0,       1430,       1430,        1,    14786, 0x721ae651
+0,       1440,       1440,        1,    14954, 0x9332ecfd
+0,       1450,       1450,        1,    15113, 0x5e9796e0
+0,       1460,       1460,        1,    15237, 0x23a2b15d
+0,       1470,       1470,        1,    15258, 0x7af1b15a
+0,       1480,       1480,        1,    15401, 0x4c87e5ea
+0,       1490,       1490,        1,    15485, 0xf434d51b
+0,       1500,       1500,        1,    15590, 0xf3438a5e
+0,       1510,       1510,        1,    15639, 0x3c1191ba
+0,       1520,       1520,        1,    15710, 0x3f8fb09e
+0,       1530,       1530,        1,    15845, 0xef17e0d0
+0,       1540,       1540,        1,    15819, 0x8e410489
+0,       1550,       1550,        1,    15934, 0x1dc30805
+0,       1560,       1560,        1,    16086, 0xe8668b2b
+0,       1570,       1570,        1,    16134, 0xa870a1ad
+0,       1580,       1580,        1,    16235, 0xbc6cb3ff
+0,       1590,       1590,        1,    16255, 0x2ebb95fe
+0,       1600,       1600,        1,    16553, 0xe6302d8a
+0,       1610,       1610,        1,    16670, 0xd0334b51
+0,       1620,       1620,        1,    16849, 0x19c680c3
+0,       1630,       1630,        1,    16961, 0x830c19d7
+0,       1640,       1640,        1,    16964, 0x11682a72
+0,       1650,       1650,        1,    17178, 0x394b922c
+0,       1660,       1660,        1,    17233, 0x39326f15
+0,       1670,       1670,        1,    17377, 0xef8a7825
+0,       1680,       1680,        1,    17479, 0x08a48972
+0,       1690,       1690,        1,    17498, 0x2b8a7493
+0,       1700,       1700,        1,    17620, 0xd2131afa
+0,       1710,       1710,        1,    17560, 0xf7b16916
+0,       1720,       1720,        1,    17648, 0xc5fd212d
diff --git a/tests/ref/fate/gifenc-bgr8 b/tests/ref/fate/gifenc-bgr8
new file mode 100644
index 0000000..5c8377a
--- /dev/null
+++ b/tests/ref/fate/gifenc-bgr8
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,      552, 0x271a2dd3
+0,         10,         10,        1,      296, 0x87e9926d
+0,         20,         20,        1,      457, 0x4bb9dc1a
+0,         30,         30,        1,      561, 0x11661d1b
+0,         40,         40,        1,      736, 0xfbfa6dc1
+0,         50,         50,        1,      879, 0xc46dc61b
+0,         60,         60,        1,      988, 0x07fcf5e1
+0,         70,         70,        1,     1034, 0x3d1d16a7
+0,         80,         80,        1,     1266, 0x969583ba
+0,         90,         90,        1,     1262, 0x2769771f
+0,        100,        100,        1,      179, 0x3a27517c
+0,        110,        110,        1,     1650, 0xa0c341c0
+0,        120,        120,        1,     1789, 0xb3649a49
+0,        130,        130,        1,     1731, 0x17fb7671
+0,        140,        140,        1,     1947, 0xc61ef1ec
+0,        150,        150,        1,     2015, 0x9f93f9ec
+0,        160,        160,        1,     2256, 0xfbf1854a
+0,        170,        170,        1,     2420, 0xfd40d5d0
+0,        180,        180,        1,     2504, 0xbcec0335
+0,        190,        190,        1,     2604, 0x522b0ea9
+0,        200,        200,        1,     2805, 0x752a995a
+0,        210,        210,        1,     2876, 0xb78ba92e
+0,        220,        220,        1,     2980, 0xae84cf06
+0,        230,        230,        1,     3096, 0xe7962222
+0,        240,        240,        1,     3210, 0x84392f81
+0,        250,        250,        1,     3299, 0xe205816c
+0,        260,        260,        1,     3396, 0xf8e9b993
+0,        270,        270,        1,     3496, 0x85a7cbe0
+0,        280,        280,        1,     3703, 0xfd2737d5
+0,        290,        290,        1,     3878, 0x66ed9693
+0,        300,        300,        1,     4095, 0x83c1032c
+0,        310,        310,        1,     4152, 0xe6640ad9
+0,        320,        320,        1,     4342, 0x56f0a1f6
+0,        330,        330,        1,     4514, 0x72e4dfaf
+0,        340,        340,        1,     4609, 0xd5cd3059
+0,        350,        350,        1,     4781, 0xdf5eaf33
+0,        360,        360,        1,     4754, 0x688796ec
+0,        370,        370,        1,     5011, 0x2ed6175c
+0,        380,        380,        1,     5094, 0xbfd950d1
+0,        390,        390,        1,     5207, 0xf085adcd
+0,        400,        400,        1,     2346, 0x3136d807
+0,        410,        410,        1,     1451, 0x5bfbe908
+0,        420,        420,        1,      272, 0xa6627f67
+0,        430,        430,        1,     1422, 0xc1d6d691
+0,        440,        440,        1,      314, 0xfbf2951f
+0,        450,        450,        1,      188, 0x4ee353db
+0,        460,        460,        1,     5429, 0x5a04008c
+0,        470,        470,        1,     6017, 0x7af85b10
+0,        480,        480,        1,     6120, 0x744f9147
+0,        490,        490,        1,     6350, 0x4385ea48
+0,        500,        500,        1,     6573, 0xd3a47d1e
+0,        510,        510,        1,     6640, 0xb93d6b6a
+0,        520,        520,        1,     6741, 0x9341b1d7
+0,        530,        530,        1,     6976, 0x92a2ff68
+0,        540,        540,        1,     7081, 0x49d2542f
+0,        550,        550,        1,     7190, 0x4a1b7c77
+0,        560,        560,        1,     7303, 0x0677a725
+0,        570,        570,        1,     7107, 0xaa7b2eb0
+0,        580,        580,        1,     7401, 0xe9c4e181
+0,        590,        590,        1,     7529, 0x7b071929
+0,        600,        600,        1,     7642, 0xb4a551b1
+0,        610,        610,        1,     7702, 0x46717848
+0,        620,        620,        1,     7809, 0xcf6f663c
+0,        630,        630,        1,     7846, 0x10b0c25a
+0,        640,        640,        1,     7924, 0x3f86d689
+0,        650,        650,        1,     8189, 0x3a505d27
+0,        660,        660,        1,     8358, 0x2918901e
+0,        670,        670,        1,     8457, 0x6228be94
+0,        680,        680,        1,     8448, 0x30a9cd2d
+0,        690,        690,        1,     8685, 0xd28830fc
+0,        700,        700,        1,     8703, 0x68ad4d0a
+0,        710,        710,        1,     8782, 0x4a6b6e98
+0,        720,        720,        1,     8839, 0x20358ebb
+0,        730,        730,        1,     8453, 0x500fb863
+0,        740,        740,        1,     8641, 0x0fcb1f64
+0,        750,        750,        1,     9203, 0x9cfd2739
+0,        760,        760,        1,     9191, 0x25bc41e0
+0,        770,        770,        1,     9259, 0x05985a48
+0,        780,        780,        1,     8905, 0xc6b798e4
+0,        790,        790,        1,     9171, 0x5d9afefa
+0,        800,        800,        1,     9857, 0xd9d24f4a
+0,        810,        810,        1,     9989, 0xda479e57
+0,        820,        820,        1,    10005, 0xe616d606
+0,        830,        830,        1,     9614, 0xe8b10d58
+0,        840,        840,        1,     9777, 0x432b620a
+0,        850,        850,        1,    10364, 0xab9a9cf9
+0,        860,        860,        1,    10496, 0x7374a9c8
+0,        870,        870,        1,    10541, 0x08b4e722
+0,        880,        880,        1,    10185, 0x55b30955
+0,        890,        890,        1,    10309, 0x20a92e4c
+0,        900,        900,        1,    10947, 0xdcca628d
+0,        910,        910,        1,    11045, 0xbbc2d1b9
+0,        920,        920,        1,    11054, 0x809c1063
+0,        930,        930,        1,    10637, 0x76b10ce2
+0,        940,        940,        1,    10673, 0xebfbe18a
+0,        950,        950,        1,    11495, 0xa2759ffe
+0,        960,        960,        1,    11710, 0xc97e2b99
+0,        970,        970,        1,    11853, 0x93f669f5
+0,        980,        980,        1,    11633, 0x3c260277
+0,        990,        990,        1,    12088, 0x8416bdc8
+0,       1000,       1000,        1,    12214, 0x2d67d04f
+0,       1010,       1010,        1,    12364, 0xedc26a23
+0,       1020,       1020,        1,    12390, 0x09442bdc
+0,       1030,       1030,        1,    12634, 0x3974df0b
+0,       1040,       1040,        1,    12783, 0x4510e5dd
+0,       1050,       1050,        1,    12935, 0x3aa8ab83
+0,       1060,       1060,        1,    13151, 0x6dcfcea8
+0,       1070,       1070,        1,    13297, 0x42ff3c3b
+0,       1080,       1080,        1,    13398, 0xf8bd861f
+0,       1090,       1090,        1,    13593, 0x8a981279
+0,       1100,       1100,        1,    13650, 0xdf4dfc45
+0,       1110,       1110,        1,    13861, 0x529b2d5b
+0,       1120,       1120,        1,    14030, 0x23066a5b
+0,       1130,       1130,        1,    14304, 0x0f6cfe7b
+0,       1140,       1140,        1,    14439, 0x96347009
+0,       1150,       1150,        1,    14572, 0x656096eb
+0,       1160,       1160,        1,    14705, 0xcbf10aab
+0,       1170,       1170,        1,    14815, 0xe0a025dd
+0,       1180,       1180,        1,    14915, 0x5337414c
+0,       1190,       1190,        1,    15011, 0xc6aa9af2
+0,       1200,       1200,        1,    15166, 0x0ecdcfde
+0,       1210,       1210,        1,    15348, 0xda6107b3
+0,       1220,       1220,        1,    15385, 0x4e21ed9c
+0,       1230,       1230,        1,    15535, 0xf25b94bf
+0,       1240,       1240,        1,    15692, 0x22c59875
+0,       1250,       1250,        1,    15707, 0x60c1d208
+0,       1260,       1260,        1,    15942, 0xb3d41b2c
+0,       1270,       1270,        1,    16080, 0xc7e627bf
+0,       1280,       1280,        1,    16187, 0x63656fc4
+0,       1290,       1290,        1,    16276, 0x10d3cbba
+0,       1300,       1300,        1,    16385, 0x28aeffa2
+0,       1310,       1310,        1,    16607, 0x7d652b51
+0,       1320,       1320,        1,    16708, 0xa18cda61
+0,       1330,       1330,        1,    16834, 0xd00d3612
+0,       1340,       1340,        1,    16908, 0xab6b55bc
+0,       1350,       1350,        1,    17031, 0x15d03798
+0,       1360,       1360,        1,    17162, 0xa1246800
+0,       1370,       1370,        1,    17433, 0x11fc5391
+0,       1380,       1380,        1,    17641, 0xf01069f3
+0,       1390,       1390,        1,    17918, 0x1df6d8f4
+0,       1400,       1400,        1,    18022, 0x29070e7a
+0,       1410,       1410,        1,    18123, 0x0b202ab9
+0,       1420,       1420,        1,    18227, 0xc2166417
+0,       1430,       1430,        1,    18290, 0x9274864d
+0,       1440,       1440,        1,    18455, 0xb6beb7d1
+0,       1450,       1450,        1,    18733, 0xe1da7dd3
+0,       1460,       1460,        1,    18798, 0x2688b183
+0,       1470,       1470,        1,    18924, 0xd20fd52b
+0,       1480,       1480,        1,    18962, 0x137ddd75
+0,       1490,       1490,        1,    19148, 0xa52f4385
+0,       1500,       1500,        1,    19368, 0x4602b2c5
+0,       1510,       1510,        1,    19442, 0x281cc33e
+0,       1520,       1520,        1,    19543, 0x31bd0758
+0,       1530,       1530,        1,    19609, 0xc7680529
+0,       1540,       1540,        1,    19710, 0xd0303592
+0,       1550,       1550,        1,    19829, 0x013ebd6f
+0,       1560,       1560,        1,    19949, 0x49304a4f
+0,       1570,       1570,        1,    20048, 0xfc31cede
+0,       1580,       1580,        1,    20144, 0xbf3a520c
+0,       1590,       1590,        1,    20207, 0x82d1692d
+0,       1600,       1600,        1,    20362, 0x09876636
+0,       1610,       1610,        1,    20575, 0x6f19e529
+0,       1620,       1620,        1,    20687, 0x27c833bb
+0,       1630,       1630,        1,    20765, 0x40a49321
+0,       1640,       1640,        1,    20877, 0x1f8c2519
+0,       1650,       1650,        1,    21163, 0x23aff601
+0,       1660,       1660,        1,    21241, 0x080c4974
+0,       1670,       1670,        1,    21347, 0xa22a49c1
+0,       1680,       1680,        1,    21443, 0xf423945f
+0,       1690,       1690,        1,    21612, 0x29b0e092
+0,       1700,       1700,        1,    21675, 0x7971c7f7
+0,       1710,       1710,        1,    21820, 0x2c3c1bfe
+0,       1720,       1720,        1,    21938, 0x6070d21e
diff --git a/tests/ref/fate/gifenc-gray b/tests/ref/fate/gifenc-gray
new file mode 100644
index 0000000..c7e90d1
--- /dev/null
+++ b/tests/ref/fate/gifenc-gray
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,      568, 0xe1d43487
+0,         10,         10,        1,      142, 0x92d43281
+0,         20,         20,        1,      130, 0x29383852
+0,         30,         30,        1,      129, 0x036732fa
+0,         40,         40,        1,      145, 0xcbc036bb
+0,         50,         50,        1,      135, 0x6e4536d1
+0,         60,         60,        1,      127, 0xe73f2f55
+0,         70,         70,        1,      119, 0x7912307f
+0,         80,         80,        1,      132, 0xce58343c
+0,         90,         90,        1,      126, 0x1fcd2b9c
+0,        100,        100,        1,      127, 0x6c293369
+0,        110,        110,        1,      126, 0x19162e3f
+0,        120,        120,        1,      119, 0x06602dec
+0,        130,        130,        1,      118, 0x8b083037
+0,        140,        140,        1,      115, 0xa8372c6d
+0,        150,        150,        1,      114, 0x8d0f2dbd
+0,        160,        160,        1,      129, 0xb5ab318d
+0,        170,        170,        1,      129, 0x278e34bd
+0,        180,        180,        1,      119, 0x408e3131
+0,        190,        190,        1,      121, 0x069a2c25
+0,        200,        200,        1,      127, 0x24793635
+0,        210,        210,        1,      110, 0xe30a29cc
+0,        220,        220,        1,      116, 0xf7b827f0
+0,        230,        230,        1,      118, 0xf5f62ff6
+0,        240,        240,        1,      115, 0xb7c92c27
+0,        250,        250,        1,      114, 0x0a642b7e
+0,        260,        260,        1,      114, 0x07b32c7c
+0,        270,        270,        1,      118, 0x1f4432b8
+0,        280,        280,        1,      144, 0xa81e3c75
+0,        290,        290,        1,      121, 0xacb828d6
+0,        300,        300,        1,      148, 0xb245426a
+0,        310,        310,        1,      124, 0x3d173009
+0,        320,        320,        1,      151, 0xa57c443d
+0,        330,        330,        1,      121, 0x93da2d00
+0,        340,        340,        1,      124, 0x1dd02f53
+0,        350,        350,        1,      117, 0xb0942d05
+0,        360,        360,        1,      117, 0xb5af292b
+0,        370,        370,        1,      116, 0x731a30ff
+0,        380,        380,        1,      123, 0x16342dde
+0,        390,        390,        1,      117, 0xef9e2f92
+0,        400,        400,        1,      110, 0x646e2a4a
+0,        410,        410,        1,      110, 0xe44f2be1
+0,        420,        420,        1,      108, 0x58f22c11
+0,        430,        430,        1,      112, 0x2c702d3e
+0,        440,        440,        1,      111, 0x7b412ab9
+0,        450,        450,        1,      112, 0xe95d2dfb
+0,        460,        460,        1,      109, 0x2baf2bde
+0,        470,        470,        1,      114, 0x3a772c6a
+0,        480,        480,        1,      110, 0xfe702831
+0,        490,        490,        1,      125, 0xa31f344b
+0,        500,        500,        1,      119, 0xbc31318d
+0,        510,        510,        1,      115, 0xc7b62b8f
+0,        520,        520,        1,      118, 0x7cf22dcb
+0,        530,        530,        1,      119, 0xe16c2f96
+0,        540,        540,        1,      119, 0x86d43604
+0,        550,        550,        1,      109, 0x22b72af1
+0,        560,        560,        1,      103, 0x12982731
+0,        570,        570,        1,      114, 0x6ef22e10
+0,        580,        580,        1,      109, 0x621b26dd
+0,        590,        590,        1,      110, 0xfe062836
+0,        600,        600,        1,      112, 0x4a8e2ce3
+0,        610,        610,        1,      111, 0xa7ae2865
+0,        620,        620,        1,      103, 0x80bc2b33
+0,        630,        630,        1,      114, 0xc2f92f3f
+0,        640,        640,        1,      108, 0x81332cdf
+0,        650,        650,        1,      121, 0x0d1133ad
+0,        660,        660,        1,      136, 0x2c0c3481
+0,        670,        670,        1,      108, 0x55222d1f
+0,        680,        680,        1,      125, 0x9cc536df
+0,        690,        690,        1,      114, 0x04602ae4
+0,        700,        700,        1,       99, 0xd58f291d
+0,        710,        710,        1,       98, 0xcb8f2807
+0,        720,        720,        1,      109, 0x7f292c9b
+0,        730,        730,        1,      106, 0x3daa297f
+0,        740,        740,        1,      100, 0xb7032b73
+0,        750,        750,        1,       88, 0xd56b218e
+0,        760,        760,        1,       93, 0xdcfd2353
+0,        770,        770,        1,      112, 0x35322b03
+0,        780,        780,        1,      112, 0x7c2b2d67
+0,        790,        790,        1,      204, 0xd02c5bd9
+0,        800,        800,        1,      204, 0x82055f0a
+0,        810,        810,        1,      115, 0x76472e9b
+0,        820,        820,        1,      110, 0x22b12abc
+0,        830,        830,        1,      116, 0x50a0318e
+0,        840,        840,        1,      115, 0x10632f57
+0,        850,        850,        1,      120, 0x9c5631e3
+0,        860,        860,        1,      114, 0x0e192ed8
+0,        870,        870,        1,      109, 0xdedb2a99
+0,        880,        880,        1,      105, 0x639c2cf5
+0,        890,        890,        1,      117, 0x4aff2afa
+0,        900,        900,        1,      103, 0x44842781
+0,        910,        910,        1,      147, 0x22493e48
+0,        920,        920,        1,      117, 0x3cb02d86
+0,        930,        930,        1,      111, 0x813d2e1f
+0,        940,        940,        1,       83, 0xb6961b02
+0,        950,        950,        1,      159, 0x5f2e43d0
+0,        960,        960,        1,      126, 0x56d42d1d
+0,        970,        970,        1,      164, 0xea6c464d
+0,        980,        980,        1,      133, 0x21113425
+0,        990,        990,        1,      125, 0xfc6e322e
+0,       1000,       1000,        1,      116, 0x226830da
+0,       1010,       1010,        1,      130, 0xa71a317d
+0,       1020,       1020,        1,      127, 0x5b5433af
+0,       1030,       1030,        1,      172, 0x0ed64b21
+0,       1040,       1040,        1,      142, 0x9733380f
+0,       1050,       1050,        1,      184, 0x358b533c
+0,       1060,       1060,        1,      155, 0x5304441c
+0,       1070,       1070,        1,      139, 0x15743a98
+0,       1080,       1080,        1,      129, 0xc5782f81
+0,       1090,       1090,        1,      144, 0x1ee637c8
+0,       1100,       1100,        1,      133, 0x69403297
+0,       1110,       1110,        1,      192, 0x128553a4
+0,       1120,       1120,        1,      159, 0xea783f5a
+0,       1130,       1130,        1,      201, 0xc04252a1
+0,       1140,       1140,        1,      161, 0xb56b44f6
+0,       1150,       1150,        1,      136, 0x402130e8
+0,       1160,       1160,        1,      117, 0x694c3490
+0,       1170,       1170,        1,      151, 0x96803b5d
+0,       1180,       1180,        1,      135, 0x9a9b399f
+0,       1190,       1190,        1,      147, 0x7e83348d
+0,       1200,       1200,        1,      135, 0x932e3720
+0,       1210,       1210,        1,      183, 0x822946e2
+0,       1220,       1220,        1,      116, 0x93652e25
+0,       1230,       1230,        1,      117, 0x77063135
+0,       1240,       1240,        1,      109, 0x12752965
+0,       1250,       1250,        1,      111, 0x8fd62b54
+0,       1260,       1260,        1,      188, 0x6c1850e5
+0,       1270,       1270,        1,      121, 0x15003168
+0,       1280,       1280,        1,      115, 0x93482f77
+0,       1290,       1290,        1,      120, 0x36552de5
+0,       1300,       1300,        1,      117, 0x74472f78
+0,       1310,       1310,        1,      188, 0xadac5400
+0,       1320,       1320,        1,      125, 0xccb83070
+0,       1330,       1330,        1,      118, 0x606e2d29
+0,       1340,       1340,        1,      130, 0x77eb3516
+0,       1350,       1350,        1,      120, 0x500f3045
+0,       1360,       1360,        1,      164, 0x729244f4
+0,       1370,       1370,        1,      234, 0xff2969ee
+0,       1380,       1380,        1,      207, 0xf9366155
+0,       1390,       1390,        1,      210, 0x31555d58
+0,       1400,       1400,        1,      118, 0x7f9a32bd
+0,       1410,       1410,        1,      120, 0xfba63099
+0,       1420,       1420,        1,      114, 0xcb382d23
+0,       1430,       1430,        1,      115, 0x10f32bad
+0,       1440,       1440,        1,      206, 0x405e630e
+0,       1450,       1450,        1,      216, 0xf6e6635f
+0,       1460,       1460,        1,      123, 0x43aa33b8
+0,       1470,       1470,        1,      121, 0x780d3018
+0,       1480,       1480,        1,      121, 0xdba92f73
+0,       1490,       1490,        1,      118, 0x35b32e26
+0,       1500,       1500,        1,      116, 0x79ff2c29
+0,       1510,       1510,        1,      110, 0xb0552ba1
+0,       1520,       1520,        1,      117, 0x08f62fd4
+0,       1530,       1530,        1,      112, 0x0dac2e9d
+0,       1540,       1540,        1,      142, 0x092138a5
+0,       1550,       1550,        1,      119, 0x752a2fc6
+0,       1560,       1560,        1,      105, 0xec5824cd
+0,       1570,       1570,        1,      115, 0xea282f22
+0,       1580,       1580,        1,      108, 0x60b72ece
+0,       1590,       1590,        1,      139, 0x6ec63b92
+0,       1600,       1600,        1,      216, 0x2c906371
+0,       1610,       1610,        1,      226, 0x77b1687d
+0,       1620,       1620,        1,      155, 0x8180455a
+0,       1630,       1630,        1,      121, 0x66092c73
+0,       1640,       1640,        1,      123, 0xf9f22cb9
+0,       1650,       1650,        1,      220, 0x65525fcb
+0,       1660,       1660,        1,      153, 0x4b9f414c
+0,       1670,       1670,        1,      120, 0x072e3379
+0,       1680,       1680,        1,      109, 0xe46a2b38
+0,       1690,       1690,        1,      118, 0xf0f12d62
+0,       1700,       1700,        1,      117, 0xcb9e2cbb
+0,       1710,       1710,        1,      137, 0x1ae83718
+0,       1720,       1720,        1,      161, 0x87364667
diff --git a/tests/ref/fate/gifenc-pal8 b/tests/ref/fate/gifenc-pal8
new file mode 100644
index 0000000..7cf1eae
--- /dev/null
+++ b/tests/ref/fate/gifenc-pal8
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,     1320, 0x95d1a9e9
+0,         10,         10,        1,     1463, 0xa697fe95
+0,         20,         20,        1,     1637, 0x294d54f9
+0,         30,         30,        1,     1755, 0x7e0b9c4d
+0,         40,         40,        1,     1896, 0x4aacc768
+0,         50,         50,        1,     2038, 0x209d1490
+0,         60,         60,        1,     2168, 0x0c405606
+0,         70,         70,        1,     2258, 0xc2fa9229
+0,         80,         80,        1,     2441, 0x2076ec47
+0,         90,         90,        1,     2565, 0x15742730
+0,        100,        100,        1,     2733, 0x2eb57d95
+0,        110,        110,        1,     2849, 0x9f16ad46
+0,        120,        120,        1,     2981, 0xf139f908
+0,        130,        130,        1,     3081, 0x0b2a4aeb
+0,        140,        140,        1,     3200, 0x35227f42
+0,        150,        150,        1,     3315, 0x35edc001
+0,        160,        160,        1,     3462, 0x27a20d23
+0,        170,        170,        1,     3599, 0x83c52b01
+0,        180,        180,        1,     3712, 0x947d49d1
+0,        190,        190,        1,     3838, 0xf87eb223
+0,        200,        200,        1,     3948, 0x5203eede
+0,        210,        210,        1,     4083, 0x32101e33
+0,        220,        220,        1,     4186, 0x6b0e5a13
+0,        230,        230,        1,     4323, 0x6326a0f5
+0,        240,        240,        1,     4426, 0x5f6bd655
+0,        250,        250,        1,     4564, 0xc62005fd
+0,        260,        260,        1,     4664, 0x43e97006
+0,        270,        270,        1,     4808, 0xf6e08d4f
+0,        280,        280,        1,     4932, 0x2d51e0b5
+0,        290,        290,        1,     5071, 0x25e830c7
+0,        300,        300,        1,     5246, 0x452e945c
+0,        310,        310,        1,     5353, 0x27eec140
+0,        320,        320,        1,     5535, 0xda38038c
+0,        330,        330,        1,     5691, 0x358970e4
+0,        340,        340,        1,     5835, 0xd89201d8
+0,        350,        350,        1,     5966, 0xfbee1fed
+0,        360,        360,        1,     6082, 0xd4b88e90
+0,        370,        370,        1,     6276, 0x1b02e684
+0,        380,        380,        1,     6382, 0xc1db2297
+0,        390,        390,        1,     6509, 0xc65473a6
+0,        400,        400,        1,     6621, 0xca917a35
+0,        410,        410,        1,     6714, 0x70f29b1d
+0,        420,        420,        1,     6822, 0x6f02e7ec
+0,        430,        430,        1,     6880, 0x95440d97
+0,        440,        440,        1,     6983, 0xab7a43fb
+0,        450,        450,        1,     7085, 0xc3427580
+0,        460,        460,        1,     7242, 0x3d00c5f0
+0,        470,        470,        1,     7349, 0x453fad59
+0,        480,        480,        1,     7513, 0x96d12666
+0,        490,        490,        1,     7575, 0xf8cb3c77
+0,        500,        500,        1,     7759, 0x1fe6ab40
+0,        510,        510,        1,     7846, 0x3853fd0f
+0,        520,        520,        1,     7975, 0x88d02c47
+0,        530,        530,        1,     8092, 0xe28a3368
+0,        540,        540,        1,     8188, 0x159a5d3b
+0,        550,        550,        1,     8307, 0x598cae50
+0,        560,        560,        1,     8436, 0xd104ee50
+0,        570,        570,        1,     8498, 0x0b1527ed
+0,        580,        580,        1,     8559, 0x0f722288
+0,        590,        590,        1,     8661, 0x3efb2500
+0,        600,        600,        1,     8774, 0x1e188a8b
+0,        610,        610,        1,     8848, 0x5b438dbb
+0,        620,        620,        1,     8968, 0x4b47ecb3
+0,        630,        630,        1,     9036, 0x7a8e0791
+0,        640,        640,        1,     9114, 0x7379131a
+0,        650,        650,        1,     9258, 0x06099246
+0,        660,        660,        1,     9423, 0x721ac9ab
+0,        670,        670,        1,     9529, 0xbb1c0d18
+0,        680,        680,        1,     9608, 0xc29a05f0
+0,        690,        690,        1,     9668, 0xf35221ff
+0,        700,        700,        1,     9709, 0x8c6d33f0
+0,        710,        710,        1,     9810, 0x2d5b59f4
+0,        720,        720,        1,     9879, 0x110ea6e5
+0,        730,        730,        1,    10038, 0x5945f5f4
+0,        740,        740,        1,    10120, 0xab24f519
+0,        750,        750,        1,    10218, 0x090d305a
+0,        760,        760,        1,    10231, 0xa77e6a66
+0,        770,        770,        1,    10313, 0x192254b7
+0,        780,        780,        1,    10444, 0x36609934
+0,        790,        790,        1,    10670, 0xfa971206
+0,        800,        800,        1,    10902, 0x01b59fd5
+0,        810,        810,        1,    10992, 0x1f2ab0bc
+0,        820,        820,        1,    11044, 0x7f5b1dc2
+0,        830,        830,        1,    11170, 0x0beaee49
+0,        840,        840,        1,    11267, 0xb1ae3808
+0,        850,        850,        1,    11427, 0x2cc9aa3f
+0,        860,        860,        1,    11529, 0x654de4f3
+0,        870,        870,        1,    11632, 0xf4972bdf
+0,        880,        880,        1,    11825, 0x0cd2548c
+0,        890,        890,        1,    11864, 0x80758637
+0,        900,        900,        1,    11949, 0x87c86fb9
+0,        910,        910,        1,    12088, 0x1b99c82b
+0,        920,        920,        1,    12160, 0x72fbf4ac
+0,        930,        930,        1,    12305, 0x9f62069a
+0,        940,        940,        1,    12295, 0x0625d96b
+0,        950,        950,        1,    12496, 0xe67cb2cf
+0,        960,        960,        1,    12660, 0x4d1d05ea
+0,        970,        970,        1,    12763, 0x12542531
+0,        980,        980,        1,    12916, 0x37c444db
+0,        990,        990,        1,    13021, 0xa1c89f22
+0,       1000,       1000,        1,    13184, 0xe13ad0be
+0,       1010,       1010,        1,    13315, 0x11b93a5d
+0,       1020,       1020,        1,    13336, 0x128254ee
+0,       1030,       1030,        1,    13536, 0x48b7b5de
+0,       1040,       1040,        1,    13728, 0x03f4d302
+0,       1050,       1050,        1,    13821, 0xfe4e97eb
+0,       1060,       1060,        1,    14002, 0x0de77dfc
+0,       1070,       1070,        1,    14156, 0xf1b1d4e1
+0,       1080,       1080,        1,    14256, 0x355320cc
+0,       1090,       1090,        1,    14451, 0x306cb131
+0,       1100,       1100,        1,    14508, 0xca729c8e
+0,       1110,       1110,        1,    14683, 0x7abec197
+0,       1120,       1120,        1,    14852, 0xa5b90496
+0,       1130,       1130,        1,    15090, 0xcd29839d
+0,       1140,       1140,        1,    15225, 0xfd85f899
+0,       1150,       1150,        1,    15340, 0x07411310
+0,       1160,       1160,        1,    15473, 0xe90086c1
+0,       1170,       1170,        1,    15583, 0x524da1f3
+0,       1180,       1180,        1,    15683, 0x404cbd62
+0,       1190,       1190,        1,    15779, 0x3ec01717
+0,       1200,       1200,        1,    15934, 0xac8b4c03
+0,       1210,       1210,        1,    16116, 0xb4fa83c9
+0,       1220,       1220,        1,    16153, 0x18f669c1
+0,       1230,       1230,        1,    16303, 0x765b10e4
+0,       1240,       1240,        1,    16460, 0xc4a8149a
+0,       1250,       1250,        1,    16475, 0x48664e2d
+0,       1260,       1260,        1,    16710, 0x8a599742
+0,       1270,       1270,        1,    16848, 0x8634a3d5
+0,       1280,       1280,        1,    16955, 0x01f1ebda
+0,       1290,       1290,        1,    17044, 0xd57b47df
+0,       1300,       1300,        1,    17153, 0xc5cf7bc7
+0,       1310,       1310,        1,    17375, 0xbbeea767
+0,       1320,       1320,        1,    17476, 0xd7a25686
+0,       1330,       1330,        1,    17602, 0x1c99b228
+0,       1340,       1340,        1,    17676, 0xd860d1d2
+0,       1350,       1350,        1,    17799, 0xe4ccb3ae
+0,       1360,       1360,        1,    17930, 0xf322e416
+0,       1370,       1370,        1,    18201, 0xc6f1cfa7
+0,       1380,       1380,        1,    18409, 0x7cdfe609
+0,       1390,       1390,        1,    18686, 0xf65e5519
+0,       1400,       1400,        1,    18790, 0x6d5c8a90
+0,       1410,       1410,        1,    18891, 0x4702a6cf
+0,       1420,       1420,        1,    18995, 0x69e5e02d
+0,       1430,       1430,        1,    19058, 0xc56f0272
+0,       1440,       1440,        1,    19223, 0xe89733f6
+0,       1450,       1450,        1,    19501, 0xdb80f9e9
+0,       1460,       1460,        1,    19566, 0xa3952da8
+0,       1470,       1470,        1,    19692, 0x65925150
+0,       1480,       1480,        1,    19730, 0x1352599a
+0,       1490,       1490,        1,    19916, 0xd246bf9b
+0,       1500,       1500,        1,    20136, 0x1c462eea
+0,       1510,       1510,        1,    20210, 0xdec93f63
+0,       1520,       1520,        1,    20311, 0xdff7836e
+0,       1530,       1530,        1,    20377, 0x753d813f
+0,       1540,       1540,        1,    20478, 0x7592b1a8
+0,       1550,       1550,        1,    20597, 0x58313994
+0,       1560,       1560,        1,    20717, 0xcdd9c665
+0,       1570,       1570,        1,    20816, 0x803b4b03
+0,       1580,       1580,        1,    20912, 0xce36ce22
+0,       1590,       1590,        1,    20975, 0x1d08e543
+0,       1600,       1600,        1,    21130, 0xc966e24c
+0,       1610,       1610,        1,    21343, 0x735e614e
+0,       1620,       1620,        1,    21455, 0x78d7afd1
+0,       1630,       1630,        1,    21533, 0x62a10f46
+0,       1640,       1640,        1,    21645, 0x8e53a12f
+0,       1650,       1650,        1,    21931, 0x3b2f7226
+0,       1660,       1660,        1,    22009, 0xf06bc58a
+0,       1670,       1670,        1,    22115, 0xeeb1c5d7
+0,       1680,       1680,        1,    22211, 0xcbab1084
+0,       1690,       1690,        1,    22380, 0xf07d5cb7
+0,       1700,       1700,        1,    22443, 0xcb79441c
+0,       1710,       1710,        1,    22588, 0xcad49814
+0,       1720,       1720,        1,    22706, 0x34924e43
diff --git a/tests/ref/fate/gifenc-rgb4_byte b/tests/ref/fate/gifenc-rgb4_byte
new file mode 100644
index 0000000..5b33fb4
--- /dev/null
+++ b/tests/ref/fate/gifenc-rgb4_byte
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,      507, 0xde1f113a
+0,         10,         10,        1,      193, 0x6c2448d4
+0,         20,         20,        1,      130, 0x2c222a38
+0,         30,         30,        1,      395, 0x0c139f90
+0,         40,         40,        1,      431, 0x4093bb5e
+0,         50,         50,        1,      466, 0x307ecb19
+0,         60,         60,        1,      542, 0xe8fae7d2
+0,         70,         70,        1,      597, 0x5b7f0870
+0,         80,         80,        1,      969, 0xefb6cd0c
+0,         90,         90,        1,     1044, 0x6500f3ee
+0,        100,        100,        1,     1185, 0xb3602d63
+0,        110,        110,        1,     1273, 0x84ca6006
+0,        120,        120,        1,     1352, 0x86aa8986
+0,        130,        130,        1,     1428, 0xeb1da79d
+0,        140,        140,        1,     1488, 0x6549cd84
+0,        150,        150,        1,     1428, 0x3c1f8b5e
+0,        160,        160,        1,     1709, 0xd9ab39f1
+0,        170,        170,        1,     1834, 0x9b5865c8
+0,        180,        180,        1,     1933, 0x3e5e8fa8
+0,        190,        190,        1,     1944, 0x67448c6f
+0,        200,        200,        1,     2170, 0xafa60bdd
+0,        210,        210,        1,     2051, 0xe603ba51
+0,        220,        220,        1,     2250, 0x10d74679
+0,        230,        230,        1,     2334, 0xc9224dc4
+0,        240,        240,        1,     2267, 0xa1cc3467
+0,        250,        250,        1,     2447, 0xc1248bb6
+0,        260,        260,        1,     2552, 0x5193b550
+0,        270,        270,        1,     2450, 0x990c82c5
+0,        280,        280,        1,     2893, 0xccf35e77
+0,        290,        290,        1,     2905, 0x64d45dc1
+0,        300,        300,        1,     3158, 0x103d0545
+0,        310,        310,        1,     3276, 0x7dd92526
+0,        320,        320,        1,     3439, 0x1ca57e83
+0,        330,        330,        1,     3481, 0x4cad6dd3
+0,        340,        340,        1,     3641, 0xac67bebf
+0,        350,        350,        1,     3727, 0xc88df63a
+0,        360,        360,        1,     3826, 0x319e3e11
+0,        370,        370,        1,     3933, 0x3d066774
+0,        380,        380,        1,     3944, 0x3d585bb8
+0,        390,        390,        1,     4011, 0x815286ac
+0,        400,        400,        1,     4119, 0xcd9dba95
+0,        410,        410,        1,     4132, 0x52259b57
+0,        420,        420,        1,     4332, 0xa5f037b6
+0,        430,        430,        1,     4400, 0xe03653c6
+0,        440,        440,        1,     4376, 0x52b71156
+0,        450,        450,        1,     4483, 0x8cf671c2
+0,        460,        460,        1,     4623, 0xd632c8a6
+0,        470,        470,        1,     4692, 0xa0b6f5a0
+0,        480,        480,        1,     4752, 0xbd86228c
+0,        490,        490,        1,     4947, 0x943688c9
+0,        500,        500,        1,     5076, 0xc6e6bb8e
+0,        510,        510,        1,     5189, 0x1963f89b
+0,        520,        520,        1,     5287, 0x3ace3762
+0,        530,        530,        1,     5414, 0x0c0eb25b
+0,        540,        540,        1,     5688, 0x62d90e2c
+0,        550,        550,        1,     5806, 0xf2514244
+0,        560,        560,        1,     5905, 0xc69e829a
+0,        570,        570,        1,     6056, 0xdfdfc029
+0,        580,        580,        1,     6126, 0x0071e896
+0,        590,        590,        1,     6203, 0xdc57bc5d
+0,        600,        600,        1,     6313, 0x307a167b
+0,        610,        610,        1,     6416, 0x8e471ea1
+0,        620,        620,        1,     6471, 0x581d5221
+0,        630,        630,        1,     6552, 0x6e957723
+0,        640,        640,        1,     6650, 0xa39cae03
+0,        650,        650,        1,     6811, 0x7680fe85
+0,        660,        660,        1,     6966, 0xbef763ea
+0,        670,        670,        1,     7063, 0x1786757b
+0,        680,        680,        1,     7107, 0xb418701d
+0,        690,        690,        1,     7163, 0x0a996e5e
+0,        700,        700,        1,     7169, 0x94cd92ac
+0,        710,        710,        1,     7255, 0x9e27c671
+0,        720,        720,        1,     7355, 0x5ae7ed7d
+0,        730,        730,        1,     7407, 0x0ad4094a
+0,        740,        740,        1,     7485, 0xf2de3823
+0,        750,        750,        1,     7512, 0x2d5b4942
+0,        760,        760,        1,     7495, 0x039fea5a
+0,        770,        770,        1,     7602, 0x185644b9
+0,        780,        780,        1,     7677, 0x5427764e
+0,        790,        790,        1,     7824, 0x3c1bdfc6
+0,        800,        800,        1,     7975, 0xd97a0dc3
+0,        810,        810,        1,     8093, 0xb9c04303
+0,        820,        820,        1,     8249, 0x8f006a33
+0,        830,        830,        1,     8288, 0xc734a06f
+0,        840,        840,        1,     8418, 0x962ee9ee
+0,        850,        850,        1,     8508, 0x65e71dd7
+0,        860,        860,        1,     8563, 0x67ca31c5
+0,        870,        870,        1,     8676, 0xc87179ea
+0,        880,        880,        1,     8779, 0x80b07aee
+0,        890,        890,        1,     8897, 0xdde8ca43
+0,        900,        900,        1,     9036, 0x1373160a
+0,        910,        910,        1,     9050, 0x2fbb0e01
+0,        920,        920,        1,     9102, 0xe69b2dfc
+0,        930,        930,        1,     9207, 0xd3a53360
+0,        940,        940,        1,     9227, 0x8e10446b
+0,        950,        950,        1,     9480, 0x42aee212
+0,        960,        960,        1,     9548, 0x5ad7fe46
+0,        970,        970,        1,     9756, 0xf8387efc
+0,        980,        980,        1,     9884, 0x09207bce
+0,        990,        990,        1,     9960, 0x1c52d8cc
+0,       1000,       1000,        1,    10020, 0x31860047
+0,       1010,       1010,        1,    10107, 0x2c3b141f
+0,       1020,       1020,        1,    10268, 0xc18a6dd5
+0,       1030,       1030,        1,    10409, 0xc8efb2ca
+0,       1040,       1040,        1,    10512, 0x70460090
+0,       1050,       1050,        1,    10667, 0x0c093e54
+0,       1060,       1060,        1,    10789, 0x12f4b600
+0,       1070,       1070,        1,    10807, 0xdf2666f0
+0,       1080,       1080,        1,    11051, 0x9f2fbe4b
+0,       1090,       1090,        1,    11121, 0xc2221f4f
+0,       1100,       1100,        1,    11243, 0x834538ee
+0,       1110,       1110,        1,    11412, 0x69cf93d0
+0,       1120,       1120,        1,    11446, 0xb3ebc432
+0,       1130,       1130,        1,    11592, 0xe773219d
+0,       1140,       1140,        1,    11666, 0x4b010ef2
+0,       1150,       1150,        1,    11767, 0xfc994ccf
+0,       1160,       1160,        1,    11805, 0x867db358
+0,       1170,       1170,        1,    11878, 0xb1f99cd5
+0,       1180,       1180,        1,    11980, 0x8e7cb628
+0,       1190,       1190,        1,    12065, 0xe8a6c8fb
+0,       1200,       1200,        1,    12142, 0x120f0868
+0,       1210,       1210,        1,    12294, 0x0e2a815f
+0,       1220,       1220,        1,    12358, 0x9ec44f74
+0,       1230,       1230,        1,    12415, 0x57984d3e
+0,       1240,       1240,        1,    12484, 0x60e792ef
+0,       1250,       1250,        1,    12637, 0xda550e79
+0,       1260,       1260,        1,    12705, 0x387416aa
+0,       1270,       1270,        1,    12884, 0x93d565b1
+0,       1280,       1280,        1,    12934, 0xcc3acd63
+0,       1290,       1290,        1,    13018, 0x5d19e50a
+0,       1300,       1300,        1,    13120, 0x1d79d417
+0,       1310,       1310,        1,    13379, 0x68834368
+0,       1320,       1320,        1,    13442, 0x74a5a323
+0,       1330,       1330,        1,    13496, 0x542ba103
+0,       1340,       1340,        1,    13638, 0x4ed3cdb9
+0,       1350,       1350,        1,    13672, 0xb0cea3a7
+0,       1360,       1360,        1,    13780, 0x69cc1216
+0,       1370,       1370,        1,    14041, 0x26a159bb
+0,       1380,       1380,        1,    14177, 0xca8bcad9
+0,       1390,       1390,        1,    14386, 0x1a810f09
+0,       1400,       1400,        1,    14464, 0x89e15cc3
+0,       1410,       1410,        1,    14503, 0x28e335ba
+0,       1420,       1420,        1,    14620, 0x87039b52
+0,       1430,       1430,        1,    14786, 0xf594e3da
+0,       1440,       1440,        1,    14954, 0x27b6efb8
+0,       1450,       1450,        1,    15113, 0x59619847
+0,       1460,       1460,        1,    15237, 0x5533afb0
+0,       1470,       1470,        1,    15258, 0xca92b037
+0,       1480,       1480,        1,    15401, 0xe645ea07
+0,       1490,       1490,        1,    15485, 0x2e3fd45d
+0,       1500,       1500,        1,    15590, 0x839785f6
+0,       1510,       1510,        1,    15639, 0x286b947f
+0,       1520,       1520,        1,    15710, 0xe109b479
+0,       1530,       1530,        1,    15845, 0xb983e576
+0,       1540,       1540,        1,    15819, 0x0f870857
+0,       1550,       1550,        1,    15934, 0x1d4f099f
+0,       1560,       1560,        1,    16086, 0x52118670
+0,       1570,       1570,        1,    16134, 0xbc6e9e1c
+0,       1580,       1580,        1,    16235, 0xd550b479
+0,       1590,       1590,        1,    16255, 0x78a598da
+0,       1600,       1600,        1,    16553, 0x6abd2c56
+0,       1610,       1610,        1,    16670, 0xe7405032
+0,       1620,       1620,        1,    16849, 0xe3cb8052
+0,       1630,       1630,        1,    16961, 0x5bb8144b
+0,       1640,       1640,        1,    16964, 0x412d2c8b
+0,       1650,       1650,        1,    17178, 0x27038f39
+0,       1660,       1660,        1,    17233, 0x5be26ca6
+0,       1670,       1670,        1,    17377, 0x95e37b15
+0,       1680,       1680,        1,    17479, 0x7fd78720
+0,       1690,       1690,        1,    17498, 0x643e7d0a
+0,       1700,       1700,        1,    17620, 0x926b1baa
+0,       1710,       1710,        1,    17560, 0xba04651e
+0,       1720,       1720,        1,    17648, 0xf4391cc1
diff --git a/tests/ref/fate/gifenc-rgb8 b/tests/ref/fate/gifenc-rgb8
new file mode 100644
index 0000000..0465cf8
--- /dev/null
+++ b/tests/ref/fate/gifenc-rgb8
@@ -0,0 +1,174 @@
+#tb 0: 1/100
+0,          0,          0,        1,      552, 0x47602c6c
+0,         10,         10,        1,      296, 0xb4fe95a2
+0,         20,         20,        1,      457, 0x094cddbc
+0,         30,         30,        1,      561, 0xde1e1eda
+0,         40,         40,        1,      736, 0x214a727b
+0,         50,         50,        1,      879, 0xcb3ece91
+0,         60,         60,        1,      988, 0x6d73fdd3
+0,         70,         70,        1,     1034, 0xd7561a6f
+0,         80,         80,        1,     1266, 0x42f383c2
+0,         90,         90,        1,     1262, 0xec807046
+0,        100,        100,        1,      179, 0x0690541c
+0,        110,        110,        1,     1650, 0xbe403782
+0,        120,        120,        1,     1789, 0xa8869efa
+0,        130,        130,        1,     1731, 0xbcfa7a2a
+0,        140,        140,        1,     1947, 0x81faf4ae
+0,        150,        150,        1,     2015, 0x9241f8ff
+0,        160,        160,        1,     2256, 0x5979832b
+0,        170,        170,        1,     2420, 0x4fded762
+0,        180,        180,        1,     2504, 0x329d0104
+0,        190,        190,        1,     2604, 0xee6707e3
+0,        200,        200,        1,     2805, 0x80e998e5
+0,        210,        210,        1,     2876, 0x71e3a8c1
+0,        220,        220,        1,     2980, 0x77e5d327
+0,        230,        230,        1,     3096, 0x31dc20bc
+0,        240,        240,        1,     3210, 0x17073031
+0,        250,        250,        1,     3299, 0x79e57fe8
+0,        260,        260,        1,     3396, 0x4f38c1ec
+0,        270,        270,        1,     3496, 0x0a0ccee2
+0,        280,        280,        1,     3703, 0x5de13b37
+0,        290,        290,        1,     3878, 0x201baf7d
+0,        300,        300,        1,     4095, 0x58980971
+0,        310,        310,        1,     4152, 0x8dfa0b07
+0,        320,        320,        1,     4342, 0x4b71a904
+0,        330,        330,        1,     4514, 0xfb9be5ce
+0,        340,        340,        1,     4609, 0x2b043300
+0,        350,        350,        1,     4781, 0xc969b3a1
+0,        360,        360,        1,     4754, 0x573aa51f
+0,        370,        370,        1,     5011, 0xcf051a34
+0,        380,        380,        1,     5094, 0xdb304d4e
+0,        390,        390,        1,     5207, 0x12b2b281
+0,        400,        400,        1,     2346, 0x98f8d488
+0,        410,        410,        1,     1451, 0xfc50e5b8
+0,        420,        420,        1,      272, 0x7ffd8015
+0,        430,        430,        1,     1422, 0xc89fd0b6
+0,        440,        440,        1,      314, 0x50f299f8
+0,        450,        450,        1,      188, 0x991f52da
+0,        460,        460,        1,     5429, 0x2e410a88
+0,        470,        470,        1,     6017, 0x10b75eb8
+0,        480,        480,        1,     6120, 0x3271939c
+0,        490,        490,        1,     6350, 0x25a1e14f
+0,        500,        500,        1,     6573, 0x8e7f78be
+0,        510,        510,        1,     6640, 0x4b906975
+0,        520,        520,        1,     6741, 0x09b4b2d2
+0,        530,        530,        1,     6976, 0xd71e0451
+0,        540,        540,        1,     7081, 0x3b3d5d96
+0,        550,        550,        1,     7190, 0x43e08b08
+0,        560,        560,        1,     7303, 0x789db394
+0,        570,        570,        1,     7107, 0xfd973662
+0,        580,        580,        1,     7401, 0xf22cefc1
+0,        590,        590,        1,     7529, 0xd055268f
+0,        600,        600,        1,     7642, 0x6e8c4e4e
+0,        610,        610,        1,     7702, 0x04df7a90
+0,        620,        620,        1,     7809, 0xbdaa746e
+0,        630,        630,        1,     7846, 0x0c76be01
+0,        640,        640,        1,     7924, 0x020bdae0
+0,        650,        650,        1,     8189, 0xb5ae5872
+0,        660,        660,        1,     8358, 0x41588a80
+0,        670,        670,        1,     8457, 0x17aec618
+0,        680,        680,        1,     8448, 0x6fe4d014
+0,        690,        690,        1,     8685, 0x271b29da
+0,        700,        700,        1,     8703, 0x2b1d543f
+0,        710,        710,        1,     8782, 0x3ad37896
+0,        720,        720,        1,     8839, 0x3603942b
+0,        730,        730,        1,     8453, 0xeb28be8b
+0,        740,        740,        1,     8641, 0x35dd24cf
+0,        750,        750,        1,     9203, 0x471e37ed
+0,        760,        760,        1,     9191, 0x94b638e6
+0,        770,        770,        1,     9259, 0xbc0b58ee
+0,        780,        780,        1,     8905, 0x1e9e9bbc
+0,        790,        790,        1,     9171, 0x053e06be
+0,        800,        800,        1,     9857, 0x2778480f
+0,        810,        810,        1,     9989, 0x83949a91
+0,        820,        820,        1,    10005, 0x90a8d339
+0,        830,        830,        1,     9614, 0xe0481ebe
+0,        840,        840,        1,     9777, 0x6ed15fe2
+0,        850,        850,        1,    10364, 0x7c76a7c9
+0,        860,        860,        1,    10496, 0x0dddbbc8
+0,        870,        870,        1,    10541, 0x742aec5b
+0,        880,        880,        1,    10185, 0x4f8203d2
+0,        890,        890,        1,    10309, 0x0802342e
+0,        900,        900,        1,    10947, 0x2be867d3
+0,        910,        910,        1,    11045, 0xc6fdd553
+0,        920,        920,        1,    11054, 0x712a0b68
+0,        930,        930,        1,    10637, 0x11f61342
+0,        940,        940,        1,    10673, 0x2ea0e35b
+0,        950,        950,        1,    11495, 0xdc4daed5
+0,        960,        960,        1,    11710, 0xb0982c2f
+0,        970,        970,        1,    11853, 0xaba66c60
+0,        980,        980,        1,    11633, 0x8dbaf9a5
+0,        990,        990,        1,    12088, 0x77c6c019
+0,       1000,       1000,        1,    12214, 0x2258da24
+0,       1010,       1010,        1,    12364, 0xa5826f91
+0,       1020,       1020,        1,    12390, 0xf9ca337a
+0,       1030,       1030,        1,    12634, 0x7f24ef77
+0,       1040,       1040,        1,    12783, 0x80a3ef7b
+0,       1050,       1050,        1,    12935, 0xf646bce6
+0,       1060,       1060,        1,    13151, 0xa3fddf67
+0,       1070,       1070,        1,    13297, 0x5194345c
+0,       1080,       1080,        1,    13398, 0xbacc92df
+0,       1090,       1090,        1,    13593, 0xece81394
+0,       1100,       1100,        1,    13650, 0x19a50f4c
+0,       1110,       1110,        1,    13861, 0x3f0a3be4
+0,       1120,       1120,        1,    14030, 0x0a497635
+0,       1130,       1130,        1,    14304, 0x52ea0416
+0,       1140,       1140,        1,    14439, 0x8e9f84ad
+0,       1150,       1150,        1,    14572, 0xf0a6a956
+0,       1160,       1160,        1,    14705, 0x439b16df
+0,       1170,       1170,        1,    14815, 0xacdc2f29
+0,       1180,       1180,        1,    14915, 0x59b75de8
+0,       1190,       1190,        1,    15011, 0xb1ccaf19
+0,       1200,       1200,        1,    15166, 0x5096ef46
+0,       1210,       1210,        1,    15348, 0xab4a2cd9
+0,       1220,       1220,        1,    15385, 0x03981120
+0,       1230,       1230,        1,    15535, 0x25d4bd16
+0,       1240,       1240,        1,    15692, 0x5ab9bbb1
+0,       1250,       1250,        1,    15707, 0x1be5ffc8
+0,       1260,       1260,        1,    15942, 0x267748e2
+0,       1270,       1270,        1,    16080, 0x76a14ebb
+0,       1280,       1280,        1,    16187, 0xded89de8
+0,       1290,       1290,        1,    16276, 0x861f0195
+0,       1300,       1300,        1,    16385, 0x7b2444b3
+0,       1310,       1310,        1,    16607, 0xcea35a1b
+0,       1320,       1320,        1,    16708, 0xdf7df945
+0,       1330,       1330,        1,    16834, 0xbb405f28
+0,       1340,       1340,        1,    16908, 0x4f597965
+0,       1350,       1350,        1,    17031, 0x90ab6981
+0,       1360,       1360,        1,    17162, 0x63288c81
+0,       1370,       1370,        1,    17433, 0x8df076db
+0,       1380,       1380,        1,    17641, 0xf3c092bb
+0,       1390,       1390,        1,    17918, 0x4b52018c
+0,       1400,       1400,        1,    18022, 0xce5043aa
+0,       1410,       1410,        1,    18123, 0x56de4a96
+0,       1420,       1420,        1,    18227, 0xf4937b23
+0,       1430,       1430,        1,    18290, 0x6adeb2c6
+0,       1440,       1440,        1,    18455, 0x6960cccc
+0,       1450,       1450,        1,    18733, 0x98ac92d4
+0,       1460,       1460,        1,    18798, 0xb0afda64
+0,       1470,       1470,        1,    18924, 0xd4ddfcf9
+0,       1480,       1480,        1,    18962, 0x6ba9fa09
+0,       1490,       1490,        1,    19148, 0x9ab766f4
+0,       1500,       1500,        1,    19368, 0xe2d9c9ff
+0,       1510,       1510,        1,    19442, 0xd8e9dd47
+0,       1520,       1520,        1,    19543, 0x3185075e
+0,       1530,       1530,        1,    19609, 0xad8619eb
+0,       1540,       1540,        1,    19710, 0x4e1858cc
+0,       1550,       1550,        1,    19829, 0x8e2ddd1a
+0,       1560,       1560,        1,    19949, 0xa2d664cb
+0,       1570,       1570,        1,    20048, 0xd87bf37e
+0,       1580,       1580,        1,    20144, 0x032b7022
+0,       1590,       1590,        1,    20207, 0x5fbd91f6
+0,       1600,       1600,        1,    20362, 0x6e2587d9
+0,       1610,       1610,        1,    20575, 0xbdb909ec
+0,       1620,       1620,        1,    20687, 0xfa5d47d8
+0,       1630,       1630,        1,    20765, 0xaeb7be00
+0,       1640,       1640,        1,    20877, 0xdc294c19
+0,       1650,       1650,        1,    21163, 0x39d218cf
+0,       1660,       1660,        1,    21241, 0xab766ba8
+0,       1670,       1670,        1,    21347, 0xa1516a9f
+0,       1680,       1680,        1,    21443, 0xff56b01c
+0,       1690,       1690,        1,    21612, 0xdbe2fe6e
+0,       1700,       1700,        1,    21675, 0x9ff6f253
+0,       1710,       1710,        1,    21820, 0x313a327c
+0,       1720,       1720,        1,    21938, 0x3bf9ea0d
diff --git a/tests/ref/lavf/gif b/tests/ref/lavf/gif
index f46a651..4acd5ca 100644
--- a/tests/ref/lavf/gif
+++ b/tests/ref/lavf/gif
@@ -1,24 +1,3 @@
 66398be6fafa026fb0fa5f2978fa3446 *./tests/data/lavf/lavf.gif
 2011766 ./tests/data/lavf/lavf.gif
 ./tests/data/lavf/lavf.gif CRC=0x0d96deb8
-8d76374306a3f79bc1114affeb0365b9 *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x51811243
-1047862 ./tests/data/images/gif/02.gif
-02350bb3d28d48019073ff91134a9598 *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x006183fd
-488742 ./tests/data/images/gif/02.gif
-49b1a02636079b8de0d39fa71cf726d5 *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x006183fd
-488742 ./tests/data/images/gif/02.gif
-6cc813a16fb3852884b93fe4d936d3cc *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x51811243
-1047862 ./tests/data/images/gif/02.gif
-8d76374306a3f79bc1114affeb0365b9 *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x51811243
-1047862 ./tests/data/images/gif/02.gif
-9e8812f67441c3fdad01384e8983ddfc *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0xd742fb02
-810442 ./tests/data/images/gif/02.gif
-6bf983516596bd5338e225dbe6765fdb *./tests/data/images/gif/02.gif
-./tests/data/images/gif/02.gif CRC=0x51811243
-1057078 ./tests/data/images/gif/02.gif
-- 
1.8.2.1



More information about the ffmpeg-devel mailing list