guliverkli, Guliverkli2, xy‑VSFilter, XySubFilter

\frz-91 left-to-right
\frz-90 left-to-right
\frz0 left-to-right
\frz45 left-to-right
\frz89 left-to-right
\frz90 left-to-right
\frz90 left-to-right
\frz91 right-to-left
\frz135 right-to-left
\frz180 right-to-left
\frz180\frx180\fry180 right-to-left
\frz269 right-to-left
\frz270 left-to-right

libass 0.10.2-48-g5dd56af to 0.12.1-5-g1c4459b with fix

--- a/libass/ass_parse.c
+++ b/libass/ass_parse.c
@@ -995,8 +995,8 @@ void process_karaoke_effects(ASS_Renderer *render_priv)
                 x_start = 1000000;
                 x_end = -1000000;
                 for (cur2 = s1; cur2 <= e1; ++cur2) {
-                    x_start = FFMIN(x_start, d6_to_int(cur2->bbox.xMin + cur2->pos.x));
-                    x_end = FFMAX(x_end, d6_to_int(cur2->bbox.xMax + cur2->pos.x));
+                    x_start = FFMIN(x_start, d6_to_int(cur2->pos.x));
+                    x_end = FFMAX(x_end, d6_to_int(cur2->pos.x + cur2->advance.x));
                 }
 
                 dt = (tm_current - tm_start);
\frz-91
\frz-90
\frz0
\frz45
\frz89
\frz90
\frz90
\frz91
\frz135
\frz180
\frz180\frx180\fry180
\frz269
\frz270

libass 0.10.2-48-g5dd56af to 0.12.1-5-g1c4459b

\frz-91
\frz-90
\frz0
\frz45
\frz89
\frz90
\frz90
\frz91
\frz135
\frz180
\frz180\frx180\fry180
\frz269
\frz270

libass 0.10.2-47-gfa3b6fa and older, 0.12.1-6-gb63d893 and newer

\frz-91
\frz-90
\frz0
\frz45 wtf
\frz89
\frz90
\frz90
\frz91
\frz135
\frz180
\frz180\frx180\fry180
\frz269
\frz270

MPC‑HC 1.7.3.4 and newer

\frz-91 left-to-right
\frz-90 left-to-right
\frz0 left-to-right
\frz45 left-to-right
\frz89 left-to-right
\frz90 left-to-right
\frz90 left-to-right
\frz91 right-to-left
\frz135 right-to-left
\frz180 right-to-left
\frz180\frx180\fry180 right-to-left
\frz269 right-to-left
\frz270 left-to-right

VSFilterMod, MPC‑HC 1.7.3.3 and older, Threaded VSFilter

The leftmost pixel of each item is always displayed. This is not visible in the word “text” (except with \frz-91) because its leftmost pixel is transparent. However, this is visible in the word “kara” and the parenthesis.

\frz-91 left-to-right
\frz-90 left-to-right
\frz0 left-to-right
\frz45 left-to-right
\frz89 left-to-right
\frz90 left-to-right
\frz90 left-to-right
\frz91 right-to-left
\frz135 right-to-left
\frz180 right-to-left
\frz180\frx180\fry180 right-to-left
\frz269 right-to-left
\frz270 left-to-right