summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.h
diff options
context:
space:
mode:
authorDr.Smile <vabnick@gmail.com>2015-09-15 20:18:17 +0300
committerDr.Smile <vabnick@gmail.com>2016-06-30 23:13:53 +0300
commit25d65abce1a0fabe3c3bf81f1ee7ee7f24b91a4e (patch)
treea5d82da3707fcf2801a960fbea70ccfca4052469 /libass/ass_render.h
parent7d05b1d3b8d08672bd7297516514396d1d1a846f (diff)
downloadlibass-25d65abce1a0fabe3c3bf81f1ee7ee7f24b91a4e.tar.bz2
libass-25d65abce1a0fabe3c3bf81f1ee7ee7f24b91a4e.tar.xz
cache: switch to gradual cache clearing
Advantages over the old algorithm consist of the following. * There are no glitches due to full cache clearing. Items are arranged into linked list ordered by time of last use. Only the oldest items get deleted at the clearing event. * Each item now keeps track of number of references. Referenced cache values are immune to clearing. * Reduced amount of total cache memory for the same performance. * Reduced number of memory allocations per cache item.
Diffstat (limited to 'libass/ass_render.h')
-rw-r--r--libass/ass_render.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libass/ass_render.h b/libass/ass_render.h
index e6b1f17..83dd1d8 100644
--- a/libass/ass_render.h
+++ b/libass/ass_render.h
@@ -42,8 +42,8 @@
#include "ass_rasterizer.h"
#define GLYPH_CACHE_MAX 10000
-#define BITMAP_CACHE_MAX_SIZE 500 * 1048576
-#define COMPOSITE_CACHE_MAX_SIZE 500 * 1048576
+#define BITMAP_CACHE_MAX_SIZE 128 * 1048576
+#define COMPOSITE_CACHE_MAX_SIZE 64 * 1048576
#define PARSED_FADE (1<<0)
#define PARSED_A (1<<1)