On Sat, 2007-04-21 at 23:30 +0200, Markus Schuster wrote:
(Well, another possibility would be upscaling video in software).
Does upscaling really have to be done in software? Excuse my (maybe?) stupid question but as far as I know video scaling can be done by a backend scaler in hardware? Am I completely off here?
If video is upscaled by hardware, it is typically impossible to access the upscaled video (and software-blend OSD over it). So, if OSD is not blended by HW and video is not upscaled in SW, OSD must be downscaled to video resolution.
- "unscaled OSD": OSD and video are mixed by hardware using either
colorkeying (no opacity) or hardware RGBA layer. OSD and video can be of different size and OSD can be blended outside of video frame. OSD size is constant (fbdev primary layer size, most likely 720x576).
OK, this sounds like the way to go :)
Definetely the best way. It has best quality and does not add much overhead as everyting is done by HW.
Well, this changes are more than 7 month old, maybe there have been some changes to DirectFB to make it work in the meanwhile... As far as I saw it's only a two line patch, so I could try to manually revert it and compile xine-lib again... Does the line setting 'colors[index].a' have something to do with disabling hardware alpha blending on matrox cards (according to the diff from version 1.41 to 1.42)? In my eys only the '#if 0' and '#endif' should be relevant.
Yes, changing it to "#if 1" should be enough. If you are using tv-out and don't see any video after the change, problem is still there :)
I have experimental patch to support colorkeying mode when hardware does not support separate ARGB OSD layer, I just need to adjust it for recent xine-libs.
Maybe worth a try?
Yes. But you'll lose OSD transparency. And there may be flickering problems with some hardware when clearing OSD (at least there are when using X11). I haven't seen that myself with Intel+X11 or NVidia +DirectFB, so it must be related to X and/or X drivers (?).
You should use --aspect=4:3 option with vdr-fbfe (or if you are not using vdr-fbfe, select 4:3 aspect ratio from plugin setup menu -> Local frontend -> Aspect ratio).
I have tried this already. I'm not using vdr-fbfe (wanted to keep things easy at the beginning) so I changed that directly in the plugins setup options. But it doesn't make any difference here... Do I have to restart vdr to make this setting work (haven't tried yet)?
You should see image scaling changed immediately when you change aspect ratio with "left" or "right" key (and you have to close menu with "Ok" for changes to be saved). Maybe you need to enable video scaling (scale video to window) too.
- Petri