This is version 3 of my Display Resolution switching patch.
The patch enables automatic switching to different display resolutions
based on the dimensions of the video being played. If USING_XRANDR is
enabled in settings.pro, a new config screen will show up under
[Appearance]. This config screen allows you to specify the display
resolution to use for the GUI, a default video display resolution, and
two "override" video display resolutions.
Isaac asked me to relocate the code into the videoout_* routines. This
has resulted in a much cleaner and simpler implementation. It also
probably enables PIP to work, while the old way probably would not have
worked correctly -- I don't know, I only have a single tuner card right now.
Unfortunately, it does not work as well for XvMC. With this new
implementation, the order of events is different, and that seems to
confuse XvMC's rendering of the video sometimes. For example, when
bringing up the EPG while watching live tv, the "Preview" window just
says "Loading Preview Video...", and never actually display the video.
Also, OSD can look really bad. If the GUI display resolution is much
lower than the video display resolution, the OSD fonts look like they
are being very poorly scaled up. I looked at videoout_xvmc.cpp a little
bit, but it was not obvious to me how to solve these problems. I
personally have never used XvMC because it performs and looks much
poorer than regular Xv. I left the code in videoout_xvmc.cpp to do the
Display Resolution switching in the hopes that someone who knows more
about XvMC can fix these issues.
Xv does not have these problems, and works very well.
With the new implementation, the user can actually "see" the display
resolution switching. It was not so obvious with the old way. This is
a small price to pay, considering how much cleaner the code is.
John
-------------- next part --------------
A non-text attachment was scrubbed...
Name: DisplayResV3.patch.bz2
Type: application/x-bzip2
Size: 7286 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-dev/attachments/20040728/f8b1ee04/DisplayResV3.patch.bin