[FFmpeg-devel] [PATCH] RV40 Loop Filter

Michael Niedermayer michaelni
Tue Oct 28 13:23:15 CET 2008


On Mon, Oct 27, 2008 at 09:49:04PM +0200, Kostya wrote:
> On Mon, Oct 27, 2008 at 07:29:41PM +0100, Michael Niedermayer wrote:
> > On Mon, Oct 27, 2008 at 07:09:34PM +0200, Kostya wrote:
> > > On Mon, Oct 27, 2008 at 05:19:13PM +0100, Michael Niedermayer wrote:
> > > > On Mon, Oct 27, 2008 at 05:12:33PM +0200, Kostya wrote:
> > > > > On Mon, Oct 27, 2008 at 03:55:38PM +0100, Michael Niedermayer wrote:
> > > > > > On Sun, Oct 26, 2008 at 03:41:09PM +0200, Kostya wrote:
> > > > > [...]
> > > > > > 
> > > > > > have you confirmed that this loop filter is bit exact?
> > > > > > Id like to make really sure that this is correct before i spend time
> > > > > > on finding a clean implementation.
> > > > > 
> > > > > Yes, it is. But as I've mentioned, there is simpler and saner filter
> > > > > there which I tend to use instead of this.
> > > > 
> > > > a different filter could cause artifacts for some videos, if that happens we
> > > > are back to square one.
> > >  
> > > But binary decoder uses it instead of this for slower CPUs.
> > 
> > then it might be ok ... hopefully ... but then i dont belive in reals
> > inteligence enough ...
>  
> because all their codecs are really maimed/rebranded versions of standard
> ones?

yes


[...]
> > > 
> > > There are several question I'd like to know an answer:
> > > 1. Why they have different edge filtering order for the first row of subblocks?
> > 
> > well i dont even know in what order they do filter them ...
> 
> for most cases it's bottom edge first, left edge second, for top row
> there may be an additional filtering of top edge.
> For the top left subblock filtering order depends on edge filtering type -
> i.e. whether left edge is filtered like edge between macroblocks or
> subblocks in single macroblocks (the last argument in loop filter function),
> it may be invoked before or after top edge filtering (and top edge
> filtering type affects that decision too). Except that, the rest fits
> into simple loop.

this description is too vague to say much about it ...
until i know precissely in what order things are filtered i cant say if its
a odd implementation of a simple rule or not



[...]
> > > 4. Why special treatment for B-frames loop filtering 
> > 
> > well i do not know how different it is, but there are 2 motion vectors
> > instead of one that leads to special cases.
> > This is especially nasty for H264 because one has to check more than
> > forward vs. forward and backward vs. backward in the mv<4 check its
> > also possible thet forward has to be checked against backward but that
> > is h264 not rv, i dunno about rv ...
> 
> there are two differences - both are not related to MVs.
> reference macroblock types are used in some logic for clipping values
> selection. 

are you sure its not reference frame indexes? That would be more in line
with h264 ...


> My favourite is clipping value selection for bottom frame border.
> As you can guess, B-frame edges are filtered too (pretty, huh?).

i dont understand what you mean by "B-frame edges"


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When you are offended at any man's fault, turn to yourself and study your
own failings. Then you will forget your anger. -- Epictetus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20081028/e9357323/attachment.pgp>



More information about the ffmpeg-devel mailing list