diff options
author | Oneric <oneric@oneric.stub> | 2022-09-14 15:23:52 +0200 |
---|---|---|
committer | Oneric <oneric@oneric.stub> | 2022-10-14 20:21:09 +0200 |
commit | 82c654056acfc240ef1400c2bdc67489be0d98fd (patch) | |
tree | 06d5fb4ed7a2896cb9e6762c5b7782b95bcead09 /libass/ass_render.h | |
parent | 371aa684cf8027e1f25d1a3341d0b3d374509408 (diff) | |
download | libass-82c654056acfc240ef1400c2bdc67489be0d98fd.tar.bz2 libass-82c654056acfc240ef1400c2bdc67489be0d98fd.tar.xz |
Implement v4++'s \kt tag
\kt allows to set the karaoke timing offset to a value other than the
sum of preceeding karaoke durations. Notably this means multiple karaoke
sequences of one Event can be ative at the same time.
Like in VSFilter, \kt is available regardless of the format version.
Using \kt after a karaoke tag in the same override sequence
always makes the preceeding karaoke act as if already completed.
Using \kt within a run resets timing for the next karaoke run.
Addresses part of https://github.com/libass/libass/issues/461.
Further support for v4++ requires at least an ABI break.
Diffstat (limited to 'libass/ass_render.h')
-rw-r--r-- | libass/ass_render.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libass/ass_render.h b/libass/ass_render.h index e86219f..e9fe6dc 100644 --- a/libass/ass_render.h +++ b/libass/ass_render.h @@ -151,6 +151,7 @@ typedef struct glyph_info { // after process_karaoke_effects: distance in subpixels from the karaoke origin. // part of the glyph to the left of it is displayed in a different color. int32_t effect_skip_timing; // delay after the end of last karaoke word + bool reset_effect; int asc, desc; // font max ascender and descender int be; // blur edges double blur; // gaussian blur @@ -254,6 +255,7 @@ typedef struct { Effect effect_type; int32_t effect_timing; int32_t effect_skip_timing; + bool reset_effect; enum { SCROLL_LR, // left-to-right |