[MPlayer-users] Improper scaling on 5:4 display
Ben Buchwald
bb2 at alumni.cmu.edu
Sun Mar 18 20:42:54 CET 2007
I'm using mplayer on Windows with a screen resolution of 1280x1024
(5:4). I'm trying to play some videos that should have a 16:9 aspect
ratio, although they were recorded to mpeg2 with a resolution of
720x480 (dvd standard). Mplayer is recognizing that the video should
be 16:9 (1.78:1). With no extra options it uses the directx output
driver and (claims to) hardware scale the video to 854x480 (16:9).
This is what mplayer tells me on the console:
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [directx] 720x480 => 854x480 Planar YV12
However, when I take a screenshot and measure the window, I find that
it is actually 854x512. After some calculation I realized that this
aspect ratio (1.67:1) is 1.78:1 corrected for the difference between a
5:4 and 4:3 resolution (1.78*(1.25/1.333) = 1.67). It is as if some
stage of the process is trying to correct the aspect ratio of the
video for display of a 4:3 screen running a 5:4 resolution (non-square
pixels). However, 1280x1024 is the native resolution of my LCD monitor
and it is actually a 5:4 screen (I measured).
After running some more tests: the opengl output driver does it too
(the only other one I could get to work right now), it doesn't happen
if I set my resolution to 1280x960 (4:3), it does it regardless of the
source resolution/aspect ratio even when the resolution in the file
correctly matches the aspect ratio (no scaling needed)
(352x240->352x256, 624x352->624->376, 640x480->640x512), it does it
regardless of what -vf dsize, scale, expand, or crop filters I use
(although sometimes it compresses horizontally instead of expanding
vertically 720x404->674x404).
Does anyone know what stage of the process is doing this and how I can
stop it? Is it mplayer, windows, directx, or my video card? For
reference my video card is is a ATI Radeon All-in-Wonder X800 XT AGP
and I'm using directx 9.0c.
More information about the MPlayer-users
mailing list