Merge commit 'a46dc49744bdc4f2e31725b63ac8e41f701e4fa1'

* commit 'a46dc49744bdc4f2e31725b63ac8e41f701e4fa1':
  rpza: move some variables to the blocks where they are used

Merged-by: Michael Niedermayer <michaelni@gmx.at>
pull/43/merge
Michael Niedermayer 11 years ago
commit 996fdca8fb
  1. 11
      libavcodec/rpza.c

@ -74,11 +74,8 @@ static void rpza_decode_stream(RpzaContext *s)
int stride = s->frame->linesize[0] / 2;
int row_inc = stride - 4;
int chunk_size;
uint8_t opcode;
int n_blocks;
uint16_t colorA = 0, colorB;
uint16_t color4[4];
uint8_t index, idx;
uint16_t ta, tb;
uint16_t *pixels = (uint16_t *)s->frame->data[0];
@ -105,9 +102,9 @@ static void rpza_decode_stream(RpzaContext *s)
/* Process chunk data */
while (bytestream2_get_bytes_left(&s->gb)) {
opcode = bytestream2_get_byte(&s->gb); /* Get opcode */
uint8_t opcode = bytestream2_get_byte(&s->gb); /* Get opcode */
n_blocks = (opcode & 0x1f) + 1; /* Extract block counter from opcode */
int n_blocks = (opcode & 0x1f) + 1; /* Extract block counter from opcode */
/* If opcode MSbit is 0, we need more data to decide what to do */
if ((opcode & 0x80) == 0) {
@ -183,9 +180,9 @@ static void rpza_decode_stream(RpzaContext *s)
ADVANCE_BLOCK();
block_ptr = row_ptr + pixel_ptr;
for (pixel_y = 0; pixel_y < 4; pixel_y++) {
index = bytestream2_get_byteu(&s->gb);
uint8_t index = bytestream2_get_byteu(&s->gb);
for (pixel_x = 0; pixel_x < 4; pixel_x++){
idx = (index >> (2 * (3 - pixel_x))) & 0x03;
uint8_t idx = (index >> (2 * (3 - pixel_x))) & 0x03;
pixels[block_ptr] = color4[idx];
block_ptr++;
}

Loading…
Cancel
Save