[FFmpeg-devel] [PATCH 3/6] avcodec/vp8dsp: add VP7 idct and loop filter
Ronald S. Bultje
rsbultje at gmail.com
Fri Feb 7 13:15:11 CET 2014
Hi,
On Fri, Feb 7, 2014 at 5:41 AM, Peter Ross <pross at xvid.org> wrote:
> On Thu, Feb 06, 2014 at 03:13:20PM -0500, Ronald S. Bultje wrote:
> > Hi,
> >
> > On Thu, Feb 6, 2014 at 8:19 AM, Peter Ross <pross at xvid.org> wrote:
> >
> > > Signed-off-by: Peter Ross <pross at xvid.org>
> > > ---
> > > libavcodec/arm/vp8dsp.h | 4 +-
> > > libavcodec/arm/vp8dsp_init_arm.c | 6 +-
> > > libavcodec/arm/vp8dsp_init_armv6.c | 4 +-
> > > libavcodec/arm/vp8dsp_init_neon.c | 4 +-
> > > libavcodec/vp8.c | 2 +-
> > > libavcodec/vp8dsp.c | 273
> > > ++++++++++++++++++++++++++-----------
> > > libavcodec/vp8dsp.h | 6 +-
> > > libavcodec/x86/vp8dsp_init.c | 20 ++-
> > > 8 files changed, 229 insertions(+), 90 deletions(-)
> >
> > [..]
>
> [snip vp7 dct]
>
> > Can this be rewritten as a butterfly instead of matrix-multiply? This is
> a
> > lot of operations for an idct...
>
> Maybe. The algorithm is similar to the VP8 idct, but the rounding is
> different.
>
OK, so let's try to write it as a butterfly idct for consistency, that way
the code is more like the vp8 idct also I bet. If you want help, I can try
to look this weekend.
> FYI:- the On2 VP2 decoder uses a naive DCT for both MMX and C.
>
Hm...
Re vp8dsp modifications. GCC 4.8 on amd64 produces identical machine code
> for the
> vp8_*loop filter functions before and after the patch is applied. GCC will
> discard
> the dead portions of the 'if (vpn == 7)...' statement within
> filter_common().
>
OK cool, so that's OK then.
Ronald
More information about the ffmpeg-devel
mailing list