mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
rpza: move some variables to the blocks where they are used
This commit is contained in:
parent
c7769df178
commit
a46dc49744
@ -74,11 +74,8 @@ static void rpza_decode_stream(RpzaContext *s)
|
|||||||
int stride = s->frame->linesize[0] / 2;
|
int stride = s->frame->linesize[0] / 2;
|
||||||
int row_inc = stride - 4;
|
int row_inc = stride - 4;
|
||||||
int chunk_size;
|
int chunk_size;
|
||||||
uint8_t opcode;
|
|
||||||
int n_blocks;
|
|
||||||
uint16_t colorA = 0, colorB;
|
uint16_t colorA = 0, colorB;
|
||||||
uint16_t color4[4];
|
uint16_t color4[4];
|
||||||
uint8_t index, idx;
|
|
||||||
uint16_t ta, tb;
|
uint16_t ta, tb;
|
||||||
uint16_t *pixels = (uint16_t *)s->frame->data[0];
|
uint16_t *pixels = (uint16_t *)s->frame->data[0];
|
||||||
|
|
||||||
@ -105,9 +102,9 @@ static void rpza_decode_stream(RpzaContext *s)
|
|||||||
|
|
||||||
/* Process chunk data */
|
/* Process chunk data */
|
||||||
while (bytestream2_get_bytes_left(&s->gb)) {
|
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 MSbit is 0, we need more data to decide what to do */
|
||||||
if ((opcode & 0x80) == 0) {
|
if ((opcode & 0x80) == 0) {
|
||||||
@ -182,9 +179,9 @@ static void rpza_decode_stream(RpzaContext *s)
|
|||||||
while (n_blocks--) {
|
while (n_blocks--) {
|
||||||
block_ptr = row_ptr + pixel_ptr;
|
block_ptr = row_ptr + pixel_ptr;
|
||||||
for (pixel_y = 0; pixel_y < 4; pixel_y++) {
|
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++){
|
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];
|
pixels[block_ptr] = color4[idx];
|
||||||
block_ptr++;
|
block_ptr++;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user