I tested tamil word "அது" by making SRT subtitles and ASS subtitles.
SRT:
Code: Select all
1
00:00:00,000 --> 00:03:03,000
அது
ASS:
Code: Select all
[Script Info]
; Script generated by Aegisub 2.1.8
; http://www.aegisub.org/
Title: Default Aegisub file
ScriptType: v4.00+
WrapStyle: 0
PlayResX: 640
PlayResY: 480
ScaledBorderAndShadow: yes
Video Aspect Ratio: 0
Video Zoom: 6
Video Position: 0
Last Style Storage: Default
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial Unicode MS,25,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,1,2,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:00.00,0:03:03.00,Default,,0000,0000,0000,,அது
The following images use the font "Arial Unicode MS". For ASS, it is set in the script, and for SRT, it is set by preferences.
SRT (freetype renderer)
ASS (libass without HarfBuzz support)
ASS (libass with HarfBuzz support)
SRT (Mac quartztext renderer)
libass with HarfBuzz support and quartztext renderer can output correct image.
freetype renderer has some problems when using not only Tamil but other CTL languages (i.e. Arabic, Brahmic scripts, etc).
libass uses HarfBuzz for complex text layout, so it can output correct image, and when without HarfBuzz support, it outputs wrong image.