mpv-player / mpv

🎥 Command line video player
https://mpv.io
Other
28.57k stars 2.92k forks source link

Support rotating subtitles along with video #14372

Open petzku opened 5 months ago

petzku commented 5 months ago

Expected behavior of the wanted feature

Somewhat related to #6400, but I believe this is a separate concern.

Rotating video currently does not rotate subtitles. This is generally desirable for dialogue text, but for on-screen text rendered diegetically ("Typesetting" or "TS"), it would be more desirable to follow the video. Images below taken from (at time of writing, unreleased) [Kaleido-subs] Blue Archive episode 10.

image Normal display

image With video-rotate=180

Enabling this for all rendering schemes is probably not a good idea. However, libass has been working towards a "split rendering" system, where TS and dialogue could be rendered in different passes. This could be a good fit as a solution of sorts.

Alternative behavior of the wanted feature

No response

Log File

No response

Sample Files

No response

cubicibo commented 5 months ago

Enabling this for all rendering schemes is probably not a good idea. However, libass has been working towards a "split rendering" system, where TS and dialogue could be rendered in different passes. This could be a good fit as a solution of sorts.

The controversial split rendering process has nothing to do with the user desire to rotate a video and associated subtitles.

petzku commented 4 months ago

The controversial split rendering process has nothing to do with the user desire to rotate a video and associated subtitles.

Surely it is necessary to allow rotating only some subtitles? I would imagine users could want both to rotate or not rotate "dialogue" text, but it should be fairly uncontroversial that "typesetting" should always be rotated along with video.

cubicibo commented 4 months ago

This is not straightforward. Not all typesetting is expected to be tagged for that first pass blending. I am pretty sure typesetters may have cases where they want a sign to be generated at the screen resolution, and yet still tied to the video orientation.

This sounds like an edge case with very little real-world practicality.