|
|
|
@ -729,10 +729,17 @@ static void decode_422_bitstream(HYuvContext *s, int count){ |
|
|
|
|
|
|
|
|
|
count/=2; |
|
|
|
|
|
|
|
|
|
if(count >= (s->gb.size_in_bits - get_bits_count(&s->gb))/(31*4)){ |
|
|
|
|
for(i=0; i<count && get_bits_count(&s->gb) < s->gb.size_in_bits; i++){ |
|
|
|
|
READ_2PIX(s->temp[0][2*i ], s->temp[1][i], 1); |
|
|
|
|
READ_2PIX(s->temp[0][2*i+1], s->temp[2][i], 2); |
|
|
|
|
} |
|
|
|
|
}else{ |
|
|
|
|
for(i=0; i<count; i++){ |
|
|
|
|
READ_2PIX(s->temp[0][2*i ], s->temp[1][i], 1); |
|
|
|
|
READ_2PIX(s->temp[0][2*i+1], s->temp[2][i], 2); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void decode_gray_bitstream(HYuvContext *s, int count){ |
|
|
|
@ -740,9 +747,15 @@ static void decode_gray_bitstream(HYuvContext *s, int count){ |
|
|
|
|
|
|
|
|
|
count/=2; |
|
|
|
|
|
|
|
|
|
if(count >= (s->gb.size_in_bits - get_bits_count(&s->gb))/(31*2)){ |
|
|
|
|
for(i=0; i<count && get_bits_count(&s->gb) < s->gb.size_in_bits; i++){ |
|
|
|
|
READ_2PIX(s->temp[0][2*i ], s->temp[0][2*i+1], 0); |
|
|
|
|
} |
|
|
|
|
}else{ |
|
|
|
|
for(i=0; i<count; i++){ |
|
|
|
|
READ_2PIX(s->temp[0][2*i ], s->temp[0][2*i+1], 0); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#if CONFIG_HUFFYUV_ENCODER || CONFIG_FFVHUFF_ENCODER |
|
|
|
|