[FFmpeg-cvslog] r12397 - trunk/libavcodec/ac3dec.c
Rich Felker
dalias
Sun Mar 9 19:32:00 CET 2008
On Sun, Mar 09, 2008 at 02:17:16PM -0400, Justin Ruggles wrote:
> > My understanding of what you're doing now when the current frame
> > cannot be downmixed prior to IMDCT:
> >
> > coefficients -> IMDCT -> mix with upsampled previous frame -> downmix
> >
> > It works just as well do to:
> >
> > coefficients -> IMDCT -> downmix -> mix with previous frame
> >
> > Or do you have a good argument why this is not possible?
>
> Hmm. That does seem possible. The IMDCT function would have to be
> reworked a bit since right now transformed output is saved to a temp
> buffer which holds only one channel of output, which is then windowed
> and combined with samples from the previous block. Changing it as per
> your suggestion would definitely make things faster when switching. My
> guess is that the handful of times this happens for typical audio won't
> make a huge difference, but it's worth a try, if only for simplicity.
By the way, the downmix and windowing could be combined into a common
operation to eliminate the extra store/load steps. Not sure if it's
worthwhile.
Rich
More information about the ffmpeg-cvslog
mailing list