[Mesa-dev] [PATCH 1/2] vl: add motion adaptive deinterlacer

Andy Furniss adf.lists at gmail.com
Sat Feb 15 16:04:53 PST 2014


Grigori Goronzy wrote:
> On 15.02.2014 13:14, Andy Furniss wrote:
>> Thanks Grigori for doing this - looks really good on HD stuff I've
>> tested and of course is easily fast enough, unlike anything on the
>> CPU at high res.
>>
>> Any plans for the future?
>>
>
> Well, adding edge-guided spatial interpolation for the
> temporal-spatial mode of VDPAU, I have preliminary shader code for
> this already. Also, motion detection isn't quite perfect, and should
> be improved.

OK, from a user point of view the main obvious artifacts that I see
currently are jaggies on diagonals on SD material. If the above
addresses that then perfect. When I say SD I expect HD is the same but
having HD monitors/TV means that SD gets scaled up so amplifying them.
This is nothing to do with me mentioning HQ scaling below. Of course
there are other artifacts, but I guess ones you need to pause/slow-mo to
see don't really count.

>> Pre-filtered bicubic HQ scaling would be nice :-)
>
> Can you describe in more detail what you mean? Better quality scaling
> is possible, but that would be applied *after* deinterlacing.

Yea, I wasn't really thinking about it WRT deinterlacing - more just a
cheeky future project feature request because mesa vdpau has the
parameter but there is no implementation.

The pre-filtered bicubic was because I recalled coming across some
papers some time ago that praised the quality of that type of scaling
and others that mentioned GPU - now I've re-found and looked I am not so
sure they are applicable as they use cuda.

FWIW one was -

http://bigwww.epfl.ch/publications/ruijters1201.pdf

and another you will find by searching for

"Efficient Cubic B-spline Image Interpolation on a GPU"

> The deinterlacer currently always renders into a 420 surface, so even
> if you get some output, the chroma won't be correct. :)

OK, I was suprised by how good most looked some luck involved there I think.

>> I noticed that the weave shader also has issues with 422 - I
>> didn't expect this as using the progressive (for me unpatched mesa)
>> looks OK - so is 422 supposed to be supported by weave?

Nothing to do with the deinterlacer as such, but I am still curious
about the weave shader vs progressive, unless it's an mplayer issue.

>>
>> At the start or when I press f on mplayer to toggle between
>> full/window I see a frame of old/uninitialised video mem - does
>> this happen on nvidia?
>>
>
> MPlayer can be quite flawed. Have you tried mpv?

You are right, I just got mpv and the issue is gone - slightly strange
WRT mplayer being wrong as I thought nvidia effectively did their
implementation.




More information about the mesa-dev mailing list