Opened 17 years ago
Closed 17 years ago
#883 closed enhancement (invalid)
Render the OSD/subtitle after scaling the video
Reported by: | Owned by: | reimar | |
---|---|---|---|
Priority: | normal | Component: | core |
Version: | HEAD | Severity: | minor |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Reproduced by developer: | no | Analyzed by developer: | no |
Description
When I was watching a small resolution video in full-screen mode, I noticed that even tough the video itself is acceptably/enjoyably scaled up, the subtitle is aliased, hard to read. I think it's because it's rendered on the video in it's original size and later it's scaled up. If the scaling/rendering order would be reversed, the final picture would be better in these cases.
Change History (9)
comment:1 by , 17 years ago
comment:2 by , 17 years ago
There is already a myriad of possibilities to do this: -vo x11, -vo gl, -vf scale=1024:-3. Of course if you want it to magically work without any speed loss that is a bit much to ask (there are ways, but then you'd loose the antialiasing at least).
comment:3 by , 17 years ago
Reimar, do I understand correctly that you're saying it's technically not possible to do it that way that first the video is scaled up and later the text rendered on it using accelerated/antialiashed methods, or is it just low priority wish?
Meanwhile I noticed another thing that would benefit from it: if the video's aspect is not the same as the monitor's (quite usual case), then in fullscreen mode, we could use the black area to render the subtitle on. Currently it's not possible to offset the subtitle outside the video's frame.
comment:4 by , 17 years ago
(note when I say anti-aliased/alpha-blended I mean that the character borders are smooth and partially transparent)
I am saying that you can have either
1) Hardware scaling, scaled and anti-aliased/alpha blended OSD with OpenGL (implemented in MPlayer)
2) Software scaling, scaled and anti-aliased/alpha blended OSD (implemented in MPlayer, e.g. -vo x11 -zoom, or even with -vo xv if you use -vf scale manually)
3) Hardware scaling, scaled but not anti-aliased/alpha blended OSD, at least possible with -vo xv and cards that support colour-key, but not implemented in MPlayer. Since IIRC no card produced in the last two years or so supports colour-key anymore I doubt there is much sense in implementing this.
comment:5 by , 17 years ago
Ok, now I understand the technical issue here.
The other question remains, however: using the black stripe in fullscreen mode to rendering the subtitle. Is it plausible to render the black stripe and the subtitle first and then scale up to fullscreen?
comment:6 by , 17 years ago
I think -vf expand (in particular the aspect option) will do what you want, but I might have misunderstood your question.
comment:8 by , 17 years ago
(In reply to comment #7)
Something like that, only I'd like to have it automatically :)
Try adding "vf=expand=::::4/3" (or 16/9 or 16/10 depending on your screen) to your ~/.mplayer/config.
This does it automatically for all movies.
But it does it always and not only in fullscreen mode, which is slightly sub-optimal.
yes, this would be a great feature.