Your TV is 16:9 (1080p, which is 1920x1080), and your monitor is probably 16:10 
(WUXGA, which is 1920x1200).

You can find LCD monitors in both 1080p and WUXGA.  I think the higher-end 
monitors tend to be WUXGA ... http://en.wikipedia.org/wiki/WUXGA gives some 
reasons why it is generally preferred over 1080p for computer monitors.

Compiz actually has nothing to do with the configuration of your video card / 
monitor.  That is handled by the XRandR extension in Xorg (or Xinerama if 
you're using an old version of XFree86 or Xorg).

I use a pretty esoteric window manager, so I don't know what the standard 
configuration tools in Ubuntu look like, but I'm guessing Gnome probably 
provides a nice GUI to manipulate your monitor configuration, hiding the fact 
that it is actually manipulating XRandR under the hood.  However, I'm also 
guessing it mimics the behavior of the M$ Windows Display Control Panel, and 
only gives you access to the most basic features of XRandR (stretch desktop 
onto display, or mirror display but requiring both monitors to run at the same 
resolution), so you will probably need to manually configure XRandR to do what 
you want.

The 'xrandr' command line program gives you access to all of the XRandR 
features (see 'man xrandr').  It does not save your settings across reboots, so 
you will need to create an Xsession script to run the appropriate configuration 
commands each time you start X (but ensure that it runs after Gnome is started 
so Gnome doesn't reconfigure XRandR after you configure it).  Or, since you can 
reconfigure XRandR at any time on the fly, you could also just configure Gnome 
with whatever default settings you want, then replace your default MythTV and 
Hulu icons with ones that run a shell script which configures XRandR for 
watching TV just before running MythTV/Hulu, then reconfigures them back to the 
normal settings after you exit.

Here are several examples, depending on how you want to fix the problem.  I'm 
assuming your TV is on output 'HDMI', your 16:10 monitor on 'DVI' and your 4:3 
on 'VGA' - you will need to use the real output names, which can be found by 
running 'xrandr' with no arguments.

1) Force the 16:10 monitor to run at 1920x1080, having the monitor itself 
stretch the image
xrandr --output DVI --mode 1920x1080 --pos 0x0 --output HDMI --auto --same-as 
DVI --output VGA --auto --right-of DVI

2) Tell X that the 16:10 monitor is running at 1920x1080, but actually run it 
at 1920x1200, having XRandR stretch the image for you.  On the machine I'm 
currently using, the picture looks much better doing this than running the 
1920x1200 monitor at 1920x1080 and having the monitor stretch the image.
xrandr --output DVI --auto --scale 1x.9 --pos 0x0 --output HDMI --auto 
--same-as DVI --output VGA --auto --right-of DVI
(To restore the original scaling, run 'xrandr --output DVI --scale 1x1')

3) Shrink the 1920x1200 image to fit the 1920x1080 TV (having XRandR shrink the 
image for you)
xrandr --output DVI --auto --pos 0x0 --output HDMI --auto --scale 1x1.1 
--same-as DVI --output VGA --auto --right-of DVI
(To restore the original scaling, run 'xrandr --output HDMI --scale 1x1')

4) Mirror the TV and 16:10 monitor, but cut 120 rows off the bottom of the 
1920x1200 image displayed to the TV
xrandr --output DVI --auto --pos 0x0 --output HDMI --auto --pos 0x0 --output 
VGA --auto --right-of DVI

5) Mirror the TV and 16:10 monitor, but cut 60 rows off both the top and bottom 
of the 1920x1200 image displayed to the TV
xrandr --output DVI --auto --pos 0x0 --output HDMI --auto --pos 0x60 --output 
VGA  --auto --right-of DVI

6) Mirror the TV and 16:10 monitor, cutting 120 rows off the 1920x1200 image 
displayed to the TV, but allow panning on the TV so you can adjust which pixels 
are cut off simply by moving the mouse
xrandr --output DVI --auto --pos 0x0 --output HDMI --auto --panning 0x1200 
--output VGA --auto --right-of DVI
(To turn panning back off, run 'xrandr --output HDMI --panning 0x0')

Note that there is no way (that I know of) to letterbox the 16:10 monitor using 
XRandR (to basically tell X to ignore 120 rows on the 16:10 monitor), because 
the X framebuffer must always be at least as large as the largest screen.  
However, you may be able to configure MythTV or Hulu to letterbox for you (by 
limiting the full-screen display to 1920x1080 even though it has 1920x1200 
available to it), then use example 4 or 5 above to align the TV's display with 
the letterboxed MythTV/Hulu display.

Hope that helps.

-Paul

On Tue, Nov 17, 2009 at 08:33:38PM -0500, Randolph Baden wrote:
> Oh, and if anyone cares, I'm using Ubuntu 9.04 and compiz
> 1:0.8.2-0ubuntu8.1, and according to my nvidia server my 16:9 monitor
> is a DELL E228WFP and my 4:3 one is just being recognized as "CRT-1"
> -- I think it's a DELL 032DVX though I could be missing part of the
> code there (it's pretty old).  And my TV is an Insignia... someone's
> using it right now so I don't really have access to see the model on
> that, so let me know if anyone cares and thinks it would be relevant.
> :p
> 
> On Tue, Nov 17, 2009 at 8:26 PM, Randolph Baden <randy.ba...@gmail.com> wrote:
> > This problem is kind of frustrating me and I think I've given up on
> > Google.  I think compiz either can or should solve it, but I'll put it
> > before you all first to see what you think.
> >
> > I have two monitors; the primary has a 16:9 aspect and the secondary
> > has a 4:3. My machine is also next to my TV, so I split the output
> > from one of the monitors to the TV.  For whatever reason, the (16:9)
> > TV and the 16:9 monitor do not support any of the same resolutions (I
> > think this is wrong... but I have no idea how to convince the TV
> > otherwise), but the TV and the 4:3 monitor do.  I don't mind it too
> > much, since MythTV has a scaling feature that adjusts the video so
> > that it displays correctly on the TV rather than the monitor.
> >
> > Unfortunately, this season the only two shows I care about air at the
> > exact same friggin' time. Feel free to guess which two shows they are
> > if you want. :) Anyway, this means I'm now using Hulu a lot more
> > often. Both the web version and huludesktop work fine, except as you
> > might guess I can't convince the hulu player to change the aspect
> > ratio to something that would ordinarily look scrunched (and honestly,
> > I'm kind of surprised that MythTV supports what I'm guessing is a
> > pretty obscure feature).
> >
> > Oh, one final constraint.  I do use the 4:3 monitor for other stuff
> > including coding, so I don't want to just change the aspect ratio on
> > there since it would strain my eyes with wide text.
> >
> > So, I guess my questions are the following: Can I do something to fix
> > this aspect problem?  I suspect that compiz is the right place to put
> > this; does such a feature already exist?  What I'd like is to be able
> > to click on the window management button and select a different aspect
> > ration for a window... should I just be sending this to the compiz
> > folks?
> >
> > Thanks,
> > -Randy
> >
> 

Reply via email to