[MPlayer-dev-eng] [PATCH]Implement advanced deinterlacing for vdpau with SW decoders, try 2

Carl Eugen Hoyos cehoyos at ag.or.at
Sun Mar 15 19:20:11 CET 2009


Reimar Döffinger <Reimar.Doeffinger <at> gmx.de> writes:

> > +static VdpOutputSurface                   deint_surfaces[3];
> 
> Huh? Those are video surfaces you need, not output surfaces...

The same bug I had in the first version of the patch.
Should be fixed in #3.

> > -                            field, 0, NULL,
> > +                            field, 2, deint_surfaces,
> >                              surface_render[vid_surface_num].surface,
> > -                            0, NULL, &src_rect_vid,
> > +                            1, &deint_surfaces[2], &src_rect_vid,
> 
> Can you explain the semantics of deint_surfaces (i.e. what is stored in
> it at what moment) in one short sentence? If not it's probably a bad
> idea.

deint_surfaces[0], deint_surfaces[1] are past surfaces, deint_surfaces[2] is the
future surface for reference.
I wanted to explain, because I still think this was a simple idea (although not
a working one).

[...]

> > -    if (deint == 3)
> >          features[feature_count++] =
VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL;
> >      if (deint == 4)
> >          features[feature_count++] =
VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL_SPATIAL;
> 
> This may hurt people with cards with little memory,

I think the possible problem is not video memory size related, but video memory
speed: deint=4 leads to very fast A/V desync with patch #3 with my 8400GS for
PAL content.

> at least I think
> that this might allocate some extra data. We can try it anyway and see
> what happens though.

It is possible that mobile chipsets have even slower memory connections, but I
would prefer to wait for bugreports, too.

Carl Eugen

[...]




More information about the MPlayer-dev-eng mailing list