[FFmpeg-devel] [PATCH] 1D DCT for dsputil
Fri Jan 8 16:12:34 CET 2010
On Fri, Jan 08, 2010 at 01:02:19AM -0500, Alex Converse wrote:
> On Tue, Dec 22, 2009 at 8:04 PM, Alex Converse <alex.converse at gmail.com> wrote:
> > On Tue, Dec 22, 2009 at 6:25 AM, ?<pross at xvid.org> wrote:
> >> On Mon, Dec 21, 2009 at 02:02:00PM -0500, Daniel Verkamp wrote:
> >>> Hi,
> >>> In an effort to get at least some parts of the Bink patch committed, I
> >>> am splitting it into separable pieces.
> >>> This is a one-dimensional floating-point DCT used by Bink audio. ?The
> >>> actual code was written by Peter Ross.
> >>> The comments I myself have about this code:
> >>> - Should it be using math.h cos()/sin() or some lookup table approach?
> >>> - Can there be a test written? (I don't know enough about the math
> >>> involved to write a sane test...)
> >> Thanks for taking the time to split the patch.
> >> Note that the algorithm here is inefficient. It requires a 2*N FFT,
> >> whereas there are ways of achieving this with 1*N FFT. Michael posted
> >> some info on this many months ago.
> > I had a 1-D 1*N DCT but it generated the transpose (i.e.
> > uninterleaved). I can dig it up when I come back from xmas holiday if
> > you are interested.
> As promised...
> +av_cold int ff_dct_init(DCTContext *s, int nbits, int inverse)
> + int n = 1 << nbits;
> + s->nbits = nbits;
> + s->inverse = inverse;
> + s->data = av_malloc(sizeof(FFTComplex) * 2 * n);
> + if (!s->data)
> + return -1;
> + if (ff_rdft_init(&s->rdft, nbits+1, inverse) < 0)
doesnt look like 1*N to me
am i missing something?
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> ... defining _GNU_SOURCE...
For the love of all that is holy, and some that is not, don't do that.
-- Luca & Mans
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
More information about the ffmpeg-devel