diff options
author | faust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-09-02 11:34:25 +0000 |
---|---|---|
committer | faust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2004-09-02 11:34:25 +0000 |
commit | 0953591a535fcf58e09982fc42ad7c0eb9dc9703 (patch) | |
tree | 162b768f1b6f5bebfc589d649d80cb0ab05d5557 | |
parent | 3c4c49363fc91217ed09c26fe88192ff5d8f972c (diff) | |
download | mpv-0953591a535fcf58e09982fc42ad7c0eb9dc9703.tar.bz2 mpv-0953591a535fcf58e09982fc42ad7c0eb9dc9703.tar.xz |
fix for i420 format, initial patch by Aurelien Jacobs <aurel at gnuage.org> from the Geexbox mplayer patchset, some modification by me
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@13228 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | vidix/drivers/mga_vid.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/vidix/drivers/mga_vid.c b/vidix/drivers/mga_vid.c index 1e49def06c..73a5ebaad9 100644 --- a/vidix/drivers/mga_vid.c +++ b/vidix/drivers/mga_vid.c @@ -775,8 +775,15 @@ int vixConfigPlayback(vidix_playback_t *config) config->offsets[i] = i*config->frame_size; config->offset.y=0; - config->offset.v=((sw + 31) & ~31) * sh; - config->offset.u=config->offset.v+((sw + 31) & ~31) * sh /4; + if(config->fourcc == IMGFMT_I420 || config->fourcc == IMGFMT_IYUV) + { + config->offset.u=((sw + 31) & ~31) * sh; + config->offset.v=config->offset.u+((sw + 31) & ~31) * sh /4; + } + else { + config->offset.v=((sw + 31) & ~31) * sh; + config->offset.u=config->offset.v+((sw + 31) & ~31) * sh /4; + } //FIXME figure out a better way to allocate memory on card //allocate 2 megs |