[FFmpeg-devel] [PATCH 5/5] DCA: use SDIVMOD

Kostya kostya.shishkov
Mon Apr 12 05:35:12 CEST 2010


On Sun, Apr 11, 2010 at 11:05:54PM +0100, Mans Rullgard wrote:
> ---
>  libavcodec/dca.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/dca.c b/libavcodec/dca.c
> index 7a6841d..6f944f2 100644
> --- a/libavcodec/dca.c
> +++ b/libavcodec/dca.c
> @@ -34,6 +34,7 @@
>  #include "avcodec.h"
>  #include "dsputil.h"
>  #include "fft.h"
> +#include "mathops.h"
>  #include "get_bits.h"
>  #include "put_bits.h"
>  #include "dcadata.h"
> @@ -889,17 +890,16 @@ static void dca_downmix(float *samples, int srcfmt,
>      }
>  }
>  
> -

cosmetics

>  /* Very compact version of the block code decoder that does not use table
>   * look-up but is slightly slower */
>  static int decode_blockcode(int code, int levels, int *values)
>  {
> -    int i;
> +    int i, mod;
>      int offset = (levels - 1) >> 1;
>  
>      for (i = 0; i < 4; i++) {
> -        values[i] = (code % levels) - offset;
> -        code /= levels;
> +        SDIVMOD(code, mod, code, levels);
> +        values[i] = mod - offset;
>      }
>  
>      if (code == 0)

ok when SDIVMOD is approved



More information about the ffmpeg-devel mailing list