On Mon, Aug 04, 2014 at 11:17:29AM -0400, Ronald S. Bultje wrote: > Hi, > > On Sun, Aug 3, 2014 at 4:27 PM, Clément Bœsch <u...@pkh.me> wrote: > > > This removes the avcodec dependency and make the code almost twice as > > fast. More to come. > > > > The DCT factorization is based on "Fast and numerically stable > > algorithms for discrete cosine transforms" from Gerlind Plonkaa & > > Manfred Tasche (DOI: 10.1016/j.laa.2004.07.015). > > > I have no comments on the patch itself, but can you explain why we're > re-implementing a custom f/idct rather than using the one provided in > lavcodec? It seems to me that going from fixedpoint/simd'ed to float/c > would be slower, not faster, so there must be more to this patch than what > I'm getting from it... >
OK so as said in private, I didn't find an accurate (not wrongly "JPEG" like I originally said) 16x16 DCT in libavcodec. You suggested to use the HEVC or VP9 DCT. That's indeed one solution, but we currently have only IDCT for those (AFAIK), and I needed a float implementation. Now I also like the idea of implementing a specific [F/I]DCT for the filter and not something codec specific, where the accuracy might have been adjusted for very specific cases/environment. The algorithm I followed is supposed to be very stable numerically (and it indeed looks like so according to my tests), and still propose a nice optimized factorization form. Basically, it looked like to me like a really good trade-off between speed and ideal DCT. > Ronald -- Clément B.
pgpJbhnRMQu4X.pgp
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel