[FFmpeg-devel] pre discussion around Blackfin dct_quantize_bfin routine

Marc Hoffman mmh
Tue Jun 12 11:51:46 CEST 2007


Sorry
On Jun 12, 2007, at 5:49 AM, Marc Hoffman wrote:

>
> On Jun 12, 2007, at 3:50 AM, Michael Niedermayer wrote:
>
>> Hi
>>
>> On Mon, Jun 11, 2007 at 10:58:00PM -0400, Marc Hoffman wrote:
>>> Hi,
>>>
>>> This is my rough draft it works well with the small precision errors
>>> due to 16bit arithmetic, actually its the same (as far as I can  
>>> tell)
>>> as the MMX quantizer. I ran my reference fixpoint against the mmx  
>>> and
>>> it seems to work on the cases I tried, its 1 bit off which seems
>>> about right considering the truncation of the coeffs from 22 to
>>> 16bits.  Can someone look over my shoulder and give a peak. I know I
>>> have to clean up the codes a bit but I wanted to get someone else to
>>> review my work up until now.  I have used inline asm, Michael this
>>> should be pretty straight forward for you to get your head around.
>>> This doubles the performance roughly.
>>
>> your code seems to ignore the idct permutation
>> try to set FF_IDCT_INT
>>

> Does these allow me to ignore the DCT permutation?
>
> yoda:~/ffmpeg-svn/libavcodec/bfin mmh$ svn diff dsputil_bfin.c
> Index: dsputil_bfin.c
> ===================================================================
> --- dsputil_bfin.c      (revision 9231)
> +++ dsputil_bfin.c      (working copy)
> @@ -285,6 +285,7 @@
>       c->put_no_rnd_pixels_tab[0][2] = bfin_put_pixels16_y2_nornd;
>       c->put_no_rnd_pixels_tab[0][3] = ff_bfin_put_pixels16_xy2_nornd;
> +    c->idct_permutation_type = FF_NO_IDCT_PERM;
>       c->fdct               = ff_bfin_fdct;
>       c->idct               = ff_bfin_idct;
>       c->idct_add           = bfin_idct_add;
> yoda:~/ffmpeg-svn/libavcodec/bfin mmh$
>
> Thanks
> Marc







More information about the ffmpeg-devel mailing list