summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
diff options
context:
space:
mode:
authorOleg Oshmyan <chortos@inbox.lv>2015-05-23 02:35:21 +0300
committerOleg Oshmyan <chortos@inbox.lv>2015-05-25 00:16:57 +0300
commit3bbd058c6d5c8b953fd80658ae696a16ff928896 (patch)
treeb0d482e13b09f3e7274b2a51a43a24cb8eb1ff8f /libass/ass_render.c
parent546f5004a4d7e4c8688ffce591763b53afc792cf (diff)
downloadlibass-3bbd058c6d5c8b953fd80658ae696a16ff928896.tar.bz2
libass-3bbd058c6d5c8b953fd80658ae696a16ff928896.tar.xz
Apply fade only when the fade alpha is positive (like VSFilter)
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r--libass/ass_render.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 18ddea4..f471c81 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -1950,8 +1950,10 @@ static int parse_events(ASS_Renderer *render_priv, ASS_Event *event)
info->font = render_priv->state.font;
for (i = 0; i < 4; ++i) {
uint32_t clr = render_priv->state.c[i];
- change_alpha(&clr,
- mult_alpha(_a(clr), render_priv->state.fade), 1.);
+ // VSFilter compatibility: apply fade only when it's positive
+ if (render_priv->state.fade > 0)
+ change_alpha(&clr,
+ mult_alpha(_a(clr), render_priv->state.fade), 1.);
info->c[i] = clr;
}