diff --git a/tests/Makefile b/tests/Makefile index 9bb914eed3..73ee2d9c5d 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -86,6 +86,7 @@ include $(SRC_PATH)/tests/fate/ffprobe.mak include $(SRC_PATH)/tests/fate/filter.mak include $(SRC_PATH)/tests/fate/flac.mak include $(SRC_PATH)/tests/fate/fft.mak +include $(SRC_PATH)/tests/fate/gif.mak include $(SRC_PATH)/tests/fate/h264.mak include $(SRC_PATH)/tests/fate/image.mak include $(SRC_PATH)/tests/fate/indeo.mak diff --git a/tests/fate/gif.mak b/tests/fate/gif.mak new file mode 100644 index 0000000000..97b0545381 --- /dev/null +++ b/tests/fate/gif.mak @@ -0,0 +1,13 @@ +FATE_GIF += fate-gif-color +fate-gif-color: CMD = framecrc -i $(SAMPLES)/gif/tc217.gif -pix_fmt bgra + +FATE_GIF += fate-gif-disposal-restore +fate-gif-disposal-restore: CMD = framecrc -i $(SAMPLES)/gif/banner2.gif -pix_fmt bgra + +FATE_GIF += fate-gif-gray +fate-gif-gray: CMD = framecrc -i $(SAMPLES)/gif/Newtons_cradle_animation_book_2.gif -pix_fmt bgra + +FATE_GIF-$(call DEMDEC, GIF, GIF) += $(FATE_GIF) + +FATE_SAMPLES_AVCONV += $(FATE_GIF-yes) +fate-gif: $(FATE_GIF-yes) diff --git a/tests/ref/fate/gif-color b/tests/ref/fate/gif-color new file mode 100644 index 0000000000..6abb565783 --- /dev/null +++ b/tests/ref/fate/gif-color @@ -0,0 +1,174 @@ +#tb 0: 1/100 +0, 0, 0, 1, 188356, 0xf0944065 +0, 10, 10, 1, 188356, 0x146ed4c4 +0, 20, 20, 1, 188356, 0x96866a6f +0, 30, 30, 1, 188356, 0xe15e1f1c +0, 40, 40, 1, 188356, 0x0662c1d0 +0, 50, 50, 1, 188356, 0x88fa6cc4 +0, 60, 60, 1, 188356, 0x3cce2f71 +0, 70, 70, 1, 188356, 0x1510f9f3 +0, 80, 80, 1, 188356, 0xf27e9fa8 +0, 90, 90, 1, 188356, 0x0f4b64a2 +0, 100, 100, 1, 188356, 0x3d2714a5 +0, 110, 110, 1, 188356, 0x392ce45d +0, 120, 120, 1, 188356, 0x2eadb79f +0, 130, 130, 1, 188356, 0x68109314 +0, 140, 140, 1, 188356, 0x4eca71ac +0, 150, 150, 1, 188356, 0xa9aa5907 +0, 160, 160, 1, 188356, 0x2a5d08c0 +0, 170, 170, 1, 188356, 0x942bba84 +0, 180, 180, 1, 188356, 0xbee38983 +0, 190, 190, 1, 188356, 0xa0d65a5a +0, 200, 200, 1, 188356, 0x47270bee +0, 210, 210, 1, 188356, 0xc020dc40 +0, 220, 220, 1, 188356, 0x978dbc8f +0, 230, 230, 1, 188356, 0x6b1e9f1b +0, 240, 240, 1, 188356, 0xd8078bf4 +0, 250, 250, 1, 188356, 0x94ca7bd7 +0, 260, 260, 1, 188356, 0xac745e77 +0, 270, 270, 1, 188356, 0x73154f2c +0, 280, 280, 1, 188356, 0x31200601 +0, 290, 290, 1, 188356, 0x6525dd42 +0, 300, 300, 1, 188356, 0xa29b985a +0, 310, 310, 1, 188356, 0xe3e074d8 +0, 320, 320, 1, 188356, 0xb87b3222 +0, 330, 330, 1, 188356, 0x5b9a11f2 +0, 340, 340, 1, 188356, 0x25f7f8c9 +0, 350, 350, 1, 188356, 0x0235e93c +0, 360, 360, 1, 188356, 0x2a42d643 +0, 370, 370, 1, 188356, 0xfb7acddb +0, 380, 380, 1, 188356, 0xecbbbf5e +0, 390, 390, 1, 188356, 0xeba4bc9a +0, 400, 400, 1, 188356, 0x4317b36b +0, 410, 410, 1, 188356, 0x7316ae1a +0, 420, 420, 1, 188356, 0xb5ccad05 +0, 430, 430, 1, 188356, 0x38afb0dc +0, 440, 440, 1, 188356, 0xf11cad55 +0, 450, 450, 1, 188356, 0x3d77b400 +0, 460, 460, 1, 188356, 0xf084b9b9 +0, 470, 470, 1, 188356, 0x02a4c584 +0, 480, 480, 1, 188356, 0x14f4d52e +0, 490, 490, 1, 188356, 0x55118432 +0, 500, 500, 1, 188356, 0x4ad82e9f +0, 510, 510, 1, 188356, 0xc6eafc52 +0, 520, 520, 1, 188356, 0xf4bdc575 +0, 530, 530, 1, 188356, 0x8429689e +0, 540, 540, 1, 188356, 0xaa23019e +0, 550, 550, 1, 188356, 0xaf52c3a5 +0, 560, 560, 1, 188356, 0x1d387c32 +0, 570, 570, 1, 188356, 0x543d5cd2 +0, 580, 580, 1, 188356, 0x8cdb399c +0, 590, 590, 1, 188356, 0xcceb292f +0, 600, 600, 1, 188356, 0xa87115e8 +0, 610, 610, 1, 188356, 0x9665ec8f +0, 620, 620, 1, 188356, 0xad99baf4 +0, 630, 630, 1, 188356, 0xc6e5a2b5 +0, 640, 640, 1, 188356, 0xe2a48359 +0, 650, 650, 1, 188356, 0x3a270df0 +0, 660, 660, 1, 188356, 0xcc34826b +0, 670, 670, 1, 188356, 0x15ec2dcc +0, 680, 680, 1, 188356, 0x8874c5f9 +0, 690, 690, 1, 188356, 0x829966e8 +0, 700, 700, 1, 188356, 0x691f1ebb +0, 710, 710, 1, 188356, 0x00e3e184 +0, 720, 720, 1, 188356, 0x97739332 +0, 730, 730, 1, 188356, 0x507769aa +0, 740, 740, 1, 188356, 0xddfb3069 +0, 750, 750, 1, 188356, 0x7296f749 +0, 760, 760, 1, 188356, 0x0555ca32 +0, 770, 770, 1, 188356, 0x4554c683 +0, 780, 780, 1, 188356, 0x2398c10f +0, 790, 790, 1, 188356, 0x1c5ccfa0 +0, 800, 800, 1, 188356, 0xa580f3c8 +0, 810, 810, 1, 188356, 0x4fadea78 +0, 820, 820, 1, 188356, 0x4a57db38 +0, 830, 830, 1, 188356, 0x9e98df6d +0, 840, 840, 1, 188356, 0xfeb3dec9 +0, 850, 850, 1, 188356, 0xbf16ef7a +0, 860, 860, 1, 188356, 0xdc23fc48 +0, 870, 870, 1, 188356, 0x3bf2e401 +0, 880, 880, 1, 188356, 0xc832bcf4 +0, 890, 890, 1, 188356, 0x977db44f +0, 900, 900, 1, 188356, 0x18d39d96 +0, 910, 910, 1, 188356, 0x9adf60d8 +0, 920, 920, 1, 188356, 0x567b667a +0, 930, 930, 1, 188356, 0xd4a45e8e +0, 940, 940, 1, 188356, 0x94a24cc7 +0, 950, 950, 1, 188356, 0x086f0a53 +0, 960, 960, 1, 188356, 0xcbf3ebcb +0, 970, 970, 1, 188356, 0x1a40a7b9 +0, 980, 980, 1, 188356, 0xe16d8964 +0, 990, 990, 1, 188356, 0x3edd7dfa +0, 1000, 1000, 1, 188356, 0xba417fa5 +0, 1010, 1010, 1, 188356, 0x734a7611 +0, 1020, 1020, 1, 188356, 0xfa1e7b1e +0, 1030, 1030, 1, 188356, 0x1af23355 +0, 1040, 1040, 1, 188356, 0x28d41390 +0, 1050, 1050, 1, 188356, 0x2838c58d +0, 1060, 1060, 1, 188356, 0x4e2ba2a8 +0, 1070, 1070, 1, 188356, 0xcedc99ae +0, 1080, 1080, 1, 188356, 0xb06ba12d +0, 1090, 1090, 1, 188356, 0x38c997b6 +0, 1100, 1100, 1, 188356, 0x12dba0dc +0, 1110, 1110, 1, 188356, 0x5f86496a +0, 1120, 1120, 1, 188356, 0x0b74216d +0, 1130, 1130, 1, 188356, 0xdbddbada +0, 1140, 1140, 1, 188356, 0x7d168af2 +0, 1150, 1150, 1, 188356, 0x22d4462b +0, 1160, 1160, 1, 188356, 0xc248265d +0, 1170, 1170, 1, 188356, 0x37a41b0d +0, 1180, 1180, 1, 188356, 0x9ebd24f1 +0, 1190, 1190, 1, 188356, 0xf21f1633 +0, 1200, 1200, 1, 188356, 0x1db62004 +0, 1210, 1210, 1, 188356, 0xcc241ac1 +0, 1220, 1220, 1, 188356, 0x224d2637 +0, 1230, 1230, 1, 188356, 0x1bd8390c +0, 1240, 1240, 1, 188356, 0xd8e64966 +0, 1250, 1250, 1, 188356, 0x96e66287 +0, 1260, 1260, 1, 188356, 0xa83c9a32 +0, 1270, 1270, 1, 188356, 0x3a5faeba +0, 1280, 1280, 1, 188356, 0x8200cd87 +0, 1290, 1290, 1, 188356, 0x6326e591 +0, 1300, 1300, 1, 188356, 0xb5d70993 +0, 1310, 1310, 1, 188356, 0x954d5da2 +0, 1320, 1320, 1, 188356, 0x38b1788b +0, 1330, 1330, 1, 188356, 0x4aafa131 +0, 1340, 1340, 1, 188356, 0xaff2be78 +0, 1350, 1350, 1, 188356, 0x9bd7eb69 +0, 1360, 1360, 1, 188356, 0x0d2b17c9 +0, 1370, 1370, 1, 188356, 0xf5d8a764 +0, 1380, 1380, 1, 188356, 0xa302dfb2 +0, 1390, 1390, 1, 188356, 0xe8a32ac1 +0, 1400, 1400, 1, 188356, 0x50a8470d +0, 1410, 1410, 1, 188356, 0x52826061 +0, 1420, 1420, 1, 188356, 0x26e88798 +0, 1430, 1430, 1, 188356, 0x1448acb8 +0, 1440, 1440, 1, 188356, 0xfb380972 +0, 1450, 1450, 1, 188356, 0x184976e8 +0, 1460, 1460, 1, 188356, 0xa349a871 +0, 1470, 1470, 1, 188356, 0x617ed8b1 +0, 1480, 1480, 1, 188356, 0xb6bc1425 +0, 1490, 1490, 1, 188356, 0xafe74efd +0, 1500, 1500, 1, 188356, 0x0b8b61e5 +0, 1510, 1510, 1, 188356, 0xc6ad67a7 +0, 1520, 1520, 1, 188356, 0x4da186fe +0, 1530, 1530, 1, 188356, 0xe08f9975 +0, 1540, 1540, 1, 188356, 0xa43f8ba4 +0, 1550, 1550, 1, 188356, 0xcad4b6b5 +0, 1560, 1560, 1, 188356, 0x7e70d51e +0, 1570, 1570, 1, 188356, 0x429b0b5b +0, 1580, 1580, 1, 188356, 0xea92350d +0, 1590, 1590, 1, 188356, 0x9a7440f8 +0, 1600, 1600, 1, 188356, 0x63a2be6e +0, 1610, 1610, 1, 188356, 0x59b64b50 +0, 1620, 1620, 1, 188356, 0x63c4a10e +0, 1630, 1630, 1, 188356, 0x6146e5e0 +0, 1640, 1640, 1, 188356, 0x603b2ae5 +0, 1650, 1650, 1, 188356, 0x818bc774 +0, 1660, 1660, 1, 188356, 0xa5ce278f +0, 1670, 1670, 1, 188356, 0x4d85684d +0, 1680, 1680, 1, 188356, 0xbbda9cad +0, 1690, 1690, 1, 188356, 0xfee2e78e +0, 1700, 1700, 1, 188356, 0x681d2635 +0, 1710, 1710, 1, 188356, 0x05354903 +0, 1720, 1720, 1, 188356, 0x8eecac99 diff --git a/tests/ref/fate/gif-disposal-restore b/tests/ref/fate/gif-disposal-restore new file mode 100644 index 0000000000..0ce4112f2b --- /dev/null +++ b/tests/ref/fate/gif-disposal-restore @@ -0,0 +1,4 @@ +#tb 0: 1/100 +0, 0, 0, 1, 112320, 0xb8afe429 +0, 10, 10, 1, 112320, 0xae588a4b +0, 310, 310, 1, 112320, 0xccdd27b7 diff --git a/tests/ref/fate/gif-gray b/tests/ref/fate/gif-gray new file mode 100644 index 0000000000..5a133bd030 --- /dev/null +++ b/tests/ref/fate/gif-gray @@ -0,0 +1,37 @@ +#tb 0: 1/100 +0, 0, 0, 1, 691200, 0xef6c0f3d +0, 5, 5, 1, 691200, 0xc18b32de +0, 7, 7, 1, 691200, 0x2395a3d7 +0, 9, 9, 1, 691200, 0x81dc3cf2 +0, 11, 11, 1, 691200, 0xabe2390e +0, 13, 13, 1, 691200, 0xb2955c2a +0, 15, 15, 1, 691200, 0x868d9ca2 +0, 17, 17, 1, 691200, 0x3016c2b6 +0, 19, 19, 1, 691200, 0x4501cffa +0, 21, 21, 1, 691200, 0x8661d79e +0, 25, 25, 1, 691200, 0xbc96d02e +0, 27, 27, 1, 691200, 0x5f90bf5e +0, 29, 29, 1, 691200, 0xf18da09a +0, 31, 31, 1, 691200, 0x540467ce +0, 33, 33, 1, 691200, 0x60d24012 +0, 35, 35, 1, 691200, 0x24323d36 +0, 37, 37, 1, 691200, 0x9e07c84b +0, 39, 39, 1, 691200, 0xc18b32de +0, 41, 41, 1, 691200, 0xef6c0f3d +0, 46, 46, 1, 691200, 0xc9461045 +0, 48, 48, 1, 691200, 0x23ed4b99 +0, 50, 50, 1, 691200, 0x7e351d69 +0, 52, 52, 1, 691200, 0x0513e0aa +0, 54, 54, 1, 691200, 0x28a4b6f2 +0, 56, 56, 1, 691200, 0xce10a94e +0, 58, 58, 1, 691200, 0x63929d4e +0, 60, 60, 1, 691200, 0xd26c9bb6 +0, 62, 62, 1, 691200, 0xb2a29842 +0, 66, 66, 1, 691200, 0x9fd69a16 +0, 68, 68, 1, 691200, 0x10f99e46 +0, 70, 70, 1, 691200, 0xea95a9fa +0, 72, 72, 1, 691200, 0x97dbb9d6 +0, 74, 74, 1, 691200, 0xf4e9e2d6 +0, 76, 76, 1, 691200, 0x46b1230d +0, 78, 78, 1, 691200, 0xb4a54ccd +0, 80, 80, 1, 691200, 0x40cc103d