[MPlayer-dev-eng] Re: [Mplayer-cvslog] CVS: main/libvo vo_x11.c,1.51,1.5Thu Jan 31 02:31:22 2002

Alex Beregszaszi alex at naxine.org
Thu Jan 31 11:07:41 CET 2002


Hi,

On Wed, Jan 30, 2002 at 08:37:27PM -0500, D Richard Felker III wrote:
> On Thu, Jan 31, 2002 at 02:36:05AM +0200, Arpi wrote:
> > Hi,
> > 
> > > On Wednesday 30 January 2002 22:20, Gabucino wrote:
> > > > > Looks like it works only with YV12 planes, but not with BGR.
> > > >
> > > > Because it's "official" name is "YV12 scaler" .. But is there any reason
> > > support for packed pixel yuv & BGR32/24 input is planned 
> > souns good :)
> > anyway, most interesting codecs provide yv12, and your scaler does the
> > yv12->rgb in the same pass so it's even better :)
> > i don't think somebody still use win32 codecs,maybe for wmv7/8...
> 
> as i mentioned in another post, the nuppelvideo decoder uses i420
> instead of yv12, making it impossible to scale when encoding from
> nuv files. is there a reason the nuppelvideo decoder can't output
> yv12? granted it might be wasteful to convert when the nuv file is raw
> i420 data, but if its rtjpeg encoded, wouldn't it be reasonably easy
> to output yv12? i don't just ask this question for the sake of

I420 is like YV12 with a bit difference: swapped U&V planes
We could change the planes in the decoder with some memcpies...not usable
BUT, you can hack this change into vo_(x)mga, and you could use as reference
my implementations in libvo (also overwritten/moved by Micheal to SwScaler,
but you could look into cvslog) 

> encoding -- i420 output also displays completely wrong for me on
> mga_vid (although it looks fine with xv) on my g200. i'll post a bug
> report to mplayer-users when i get a chance.

Hmm, also by g200 it isn't checked if source is YV12 or I420
(libvo/mga_common.c:draw_slice_g200)

Also this patch should help:

Index: mga_common.c
===================================================================
RCS file: /cvsroot/mplayer/main/libvo/mga_common.c,v
retrieving revision 1.16
diff -r1.16 mga_common.c
57,58c57,66
<         src = image[1];
<         src2 = image[2];
---
>       if (mga_vid_config.format == IMGFMT_YV12)
>       {
>           src = image[1];
>           src2 = image[2];
>       }
>       else /* I420, IYUV */
>       {
>           src = image[2];
>           src2 = image[1];
>       }


--
alex

> 
> > anyway, the next thing come in the todod list must be the codecs
> > priority setting. and it's default should be set up by ./configure,
> > depending on libs detected (libavcodec, divx4, xvid, win32 etc)
> 
> if you're interested, i could write a script to generate codecs.conf
> at compiletime. do you think it would be better to have a source file
> for codecs.conf with directives to handle this sort of preprocessing,
> or should such a script just parse codecs.conf as it stands now and
> rewrite an output codecs.conf itself?
> 
> rich
> 
> _______________________________________________
> MPlayer-dev-eng mailing list
> MPlayer-dev-eng at mplayerhq.hu
> http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng



More information about the MPlayer-dev-eng mailing list