Mercurial > libavcodec.hg
comparison mace.c @ 7797:09b73aceebaf libavcodec
Simplify: use a for instead of unrolling by hand
author | vitor |
---|---|
date | Fri, 05 Sep 2008 00:00:20 +0000 |
parents | a7caaa2b56e9 |
children | e7ec66d55d9e |
comparison
equal
deleted
inserted
replaced
7796:a7caaa2b56e9 | 7797:09b73aceebaf |
---|---|
315 void *data, int *data_size, | 315 void *data, int *data_size, |
316 const uint8_t *buf, int buf_size) | 316 const uint8_t *buf, int buf_size) |
317 { | 317 { |
318 short *samples = data; | 318 short *samples = data; |
319 MACEContext *ctx = avctx->priv_data; | 319 MACEContext *ctx = avctx->priv_data; |
320 int i, j; | 320 int i, j, k; |
321 | 321 |
322 for(i = 0; i < avctx->channels; i++) { | 322 for(i = 0; i < avctx->channels; i++) { |
323 ctx->index = ctx->lev = 0; | 323 ctx->index = ctx->lev = 0; |
324 | 324 |
325 ctx->outPtr = samples + i; | 325 ctx->outPtr = samples + i; |
326 | 326 |
327 for (j=0; j < buf_size / 2 / avctx->channels; j++) { | 327 for (j=0; j < buf_size / 2 / avctx->channels; j++) { |
328 uint8_t pkt = buf[i*2 + j*2*avctx->channels]; | 328 for (k=0; k < 2; k++) { |
329 uint8_t pkt = buf[i*2 + j*2*avctx->channels + k]; | |
329 chomp3(ctx, pkt & 7, MACEtab1, MACEtab2, avctx->channels); | 330 chomp3(ctx, pkt & 7, MACEtab1, MACEtab2, avctx->channels); |
330 chomp3(ctx,(pkt >> 3) & 3, MACEtab3, MACEtab4, avctx->channels); | 331 chomp3(ctx,(pkt >> 3) & 3, MACEtab3, MACEtab4, avctx->channels); |
331 chomp3(ctx, pkt >> 5 , MACEtab1, MACEtab2, avctx->channels); | 332 chomp3(ctx, pkt >> 5 , MACEtab1, MACEtab2, avctx->channels); |
332 | 333 } |
333 pkt = buf[i*2 + j*2*avctx->channels + 1]; | |
334 chomp3(ctx, pkt & 7, MACEtab1, MACEtab2, avctx->channels); | |
335 chomp3(ctx,(pkt >> 3) & 3, MACEtab3, MACEtab4, avctx->channels); | |
336 chomp3(ctx, pkt >> 5 , MACEtab1, MACEtab2, avctx->channels); | |
337 } | 334 } |
338 } | 335 } |
339 | 336 |
340 *data_size = 2 * 3 * buf_size; | 337 *data_size = 2 * 3 * buf_size; |
341 | 338 |