diff options
author | wm4 <wm4@nowhere> | 2013-08-18 05:12:21 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-08-18 05:46:02 +0200 |
commit | 4b506525da87950b68620c5788453aa89bf4def2 (patch) | |
tree | 52ad3a45678d26fa6a17d35624e2dfab6d98e037 /video/out/pnm_loader.c | |
parent | 31ce3fcf9d7ece35489fee7c3783312045170576 (diff) | |
download | mpv-4b506525da87950b68620c5788453aa89bf4def2.tar.bz2 mpv-4b506525da87950b68620c5788453aa89bf4def2.tar.xz |
vo_vdpau: add RGB support
Apparently this was dropped some years ago, but judging from MPlayer's
handling of this, the original code wasn't so great anyway. The new
code handling clearing of panscan borders correctly, and integrates
better with the YUV path. (Although the VDPAU API sure makes this
annoying with its separate surface types for RGB.)
Note that we create 5 surfaces for some reason - I don't think this
makes too much sense (because we can't use the deinterlacer with RGB
surfaces), but at least it reduces the amount of differences with
the YUV code path.
Clearing the borders is done by drawing a single black pixel over the
window. This sounds pretty dumb, but it appears to work well, and
there is no other API for that. (One could try to use the video mixer
for this purpose, since it has all kinds of features, including
compositing multiple RGBA surfaces and clearing the window background.
But it would require an invisible dummy video surface to make the
video mixer happy, and that's getting too messy.)
Diffstat (limited to 'video/out/pnm_loader.c')
0 files changed, 0 insertions, 0 deletions