Punctuation in RTL languages rendered incorrectly on the Android platform

Server Version#: 1.21.3.4021
Player Version#: 8.16.0.24423 (happened on previous versions as well, as least from the last year)

The incorrect way it looks like on Android mobile / Android TV:

The correct way it looks like on other platforms (including Web, Tizen and Chromecast), notice the final dot:

In Hebrew, in practically all subtitles distributed, the assumption is that the subtitles are rendered in LTR by default. Thus, if a given sentence ends in a “.”, in the subtitles the dot will be the first character - rendered in a “left to right” order - and the Hebrew characters of the sentence itself will appear afterwards, rendered correctly in RTL. Thus the end result is that the dot is rendered on the left, and the following Hebrew characters are rendered in RTL (meaning, they are being decoded in reverse order if rendering from left to right), and thus the final result will be correct.

It seems that the Android player decided to render the whole subtitles files in RTL - meaning that since the “.” is the first character, it will be rendered on the right side. This is correct semantically, but not in practice, and results in the final punctuation being consistently on the wrong side.

An easy solution would be to handle this edge cast directly - if the language is an RTL language, change the location of the first character, if it’s a punctuation character.
Or figure out why does the Android code render the subtitles differently compared to all other platforms.

Thanks!

Bumping this.
Really hoping you’ll dedicate just a bit of time to solve this. :slight_smile:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.