[FFmpeg-devel] [PATCH] TwinVQ decoder
Vitor Sessak
vitor1001
Fri Aug 7 05:53:33 CEST 2009
Loren Merritt wrote:
> On Wed, 5 Aug 2009, Vitor Sessak wrote:
>> Loren Merritt wrote:
>>
>>> Replace imdctw_win_block and imdct_and_window with ff_imdct_half and
>>> vector_fmul_window, as per vorbis_dec.c lines 1512-1537. Or maybe aac
>>> is a closer match since it has multiple mdct blocks per packet.
>>
>> Thanks, that was a nice optimization. New version attached.
>
> What is add_vec for? In a normal mdct codec, any given output sample is
> either windowed between two imdct blocks, or copied verbatim from one.
> There is no other addition.
>
> What are the memcpies in imdct_and_window:FT_SHORT and FT_MEDIUM for?
> Doesn't imdctw_win_block handle any adjacent samples that aren't windowed?
>
> What's the memset in imdctw_win_block for? Nothing should ever be
> memset; if it's knowably zero, then don't add it to the output.
>
> Short and medium modes could avoid intermediate copies to history by
> alternating between two parts of the imdct tmp buffer.
>
> The giant switch could be made more concise, and maybe faster, as a LUT
> or two.
That mess was actually a pretty standard IMDCT windowing. New version
attached.
-Vitor
-------------- next part --------------
A non-text attachment was scrubbed...
Name: twin.diff
Type: text/x-diff
Size: 1882 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090807/fdfab314/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: twinvq.c
Type: text/x-csrc
Size: 37909 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090807/fdfab314/attachment.c>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: twinvq_data.h
Type: text/x-chdr
Size: 13509 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090807/fdfab314/attachment.h>
More information about the ffmpeg-devel
mailing list