From 70cdfc44aa09d66315ad4fb83523235644b77cdc Mon Sep 17 00:00:00 2001 From: Jean-Philippe Andre Date: Tue, 15 Apr 2014 11:41:16 +0900 Subject: [PATCH] Evas ETC1: Use LZ4HC for higher compression ratios LZ4HC has a higher compression ratio than LZ4 but basically the same decompression speed. The performance cost during encoding is actually still pretty low considering how expensive ETC1 compression can be (even at medium quality). --- src/Makefile_Evas.am | 8 ++++++-- src/modules/evas/savers/tgv/evas_image_save_tgv.c | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am index 6f8c5cb58b..a1bf33a926 100644 --- a/src/Makefile_Evas.am +++ b/src/Makefile_Evas.am @@ -1741,7 +1741,9 @@ modules/evas/savers/tgv/evas_image_save_tgv.c \ static_libs/rg_etc/rg_etc1.c \ static_libs/rg_etc/rg_etc1.h \ static_libs/lz4/lz4.c \ -static_libs/lz4/lz4.h +static_libs/lz4/lz4.h \ +static_libs/lz4/lz4hc.c \ +static_libs/lz4/lz4hc.h lib_evas_libevas_la_CPPFLAGS += \ -I$(top_srcdir)/src/static_libs/lz4 \ -I$(top_srcdir)/src/static_libs/rg_etc \ @@ -1792,7 +1794,9 @@ modules/evas/savers/tgv/evas_image_save_tgv.c \ static_libs/rg_etc/rg_etc1.c \ static_libs/rg_etc/rg_etc1.h \ static_libs/lz4/lz4.c \ -static_libs/lz4/lz4.h +static_libs/lz4/lz4.h \ +static_libs/lz4/lz4hc.c \ +static_libs/lz4/lz4hc.h modules_evas_savers_tgv_module_la_CPPFLAGS = \ -I$(top_builddir)/src/lib/efl \ -I$(top_srcdir)/src/static_libs/lz4 \ diff --git a/src/modules/evas/savers/tgv/evas_image_save_tgv.c b/src/modules/evas/savers/tgv/evas_image_save_tgv.c index 4a6af37f57..3cad4bae77 100644 --- a/src/modules/evas/savers/tgv/evas_image_save_tgv.c +++ b/src/modules/evas/savers/tgv/evas_image_save_tgv.c @@ -10,6 +10,7 @@ #endif /* ifdef _WIN32 */ #include "lz4.h" +#include "lz4hc.h" #include "rg_etc1.h" static int @@ -162,7 +163,7 @@ evas_image_save_file_tgv(RGBA_Image *im, if (compress) { - wlen = LZ4_compress(buffer, comp, block_count * 8); + wlen = LZ4_compressHC(buffer, comp, block_count * 8); } else {