[FFmpeg-devel] [PATCH] move fast dct and trellis quantize function pointers initialization
Måns Rullgård
mans
Wed Jun 20 10:14:50 CEST 2007
Michael Niedermayer <michaelni at gmx.at> writes:
> Hi
>
> On Wed, Jun 20, 2007 at 08:38:06AM +0100, M?ns Rullg?rd wrote:
>> Benoit Fouet <benoit.fouet at purplelabs.com> writes:
>>
>> > Hi,
>> >
>> > the patch moves the encoder specific part of DCT_common_init under the
>> > same ifdef.
>> > it also removes the comment telling to do so :)
>>
>> OK with me.
>
> the
> s->fast_dct_quantize= s->dct_quantize;
> is currently done after dct_quantize is set up (possibly to a mmx optimized
> variant) but after the patch its just set to the c variant ...
Dang, I didn't notice that. On second inspection, this code isn't
really good at all. If we added a new field, dct_quantize_trellis,
and initialised that to dct_quantize_trellis_c in the first #ifdef
block, then the second #ifdef block could be changed to
s->fast_dct_quantize= s->dct_quantize;
if(s->flags&CODEC_FLAG_TRELLIS_QUANT){
s->dct_quantize= dct_quantize_trellis;
}
allowing the arch init code to set an optimised quantiser, which is
currently not possible. This second part doesn't strictly need the
ifdef either. A few useless assignments during init is better than
code clutter IMHO.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list