42 int num_lens, num_codes, num_codes_sum, prefix;
51 for (i = 0; i < num_lens; i++) {
53 num_codes_sum += num_codes;
55 if (num_codes_sum > 256) {
59 "Too many VLCs (%d) to be read.\n", num_codes_sum);
63 for (j = 0; j < num_codes; j++) {
66 codes[
count] = prefix++;
75 codes, 2, 2, symbols, 1, 1, 0);
93 pred[0] = top_left[0];
94 pred[1] = top_left[1];
95 pred[2] = top_left[2];
96 pred[3] = top_left[3];
139 top_left[0] = outbuf[0];
143 top_left[1] = outbuf[1];
144 top_left[2] = outbuf[2];
145 top_left[3] = outbuf[3];
176 *top_left = outbuf[0];
193 for (i = 0; i < ctx->
avctx->
width >> is_chroma; i++) {
204 *top_left = outbuf[0];
228 for (i = 0; i < 4; i++) {
231 for (j = 0; j <= i; j++)
235 "Could not read code table %d.\n", i);
241 for (i = 0; i < avctx->
height; i++) {
247 for (i = 0; i < 4; i++)
271 for (i = 0; i < 3; i++) {
274 for (j = 0; j <= i; j++)
278 "Could not read code table %d.\n", i);
284 for (i = 0; i < avctx->
height; i++) {
285 for (j = 0; j < 3; j++)
291 for (i = 0; i < 3; i++)
311 dst[0] = pic->
data[0];
312 dst[1] = pic->
data[1];
313 dst[2] = pic->
data[2];
324 for (i = 0; i < 2; i++) {
327 for (j = 0; j <= i; j++)
331 "Could not read code table %d.\n", i);
337 for (i = 0; i < avctx->
height; i++) {
342 for (j = 0; j < 3; j++)
346 for (i = 0; i < 2; i++)
353 int *got_picture_ptr,
AVPacket *avpkt)
358 uint32_t info_tag, info_offset;
361 int coding_type,
ret;
366 if (info_tag ==
MKTAG(
'I',
'N',
'F',
'O')) {
367 info_offset =
AV_RL32(src + 4);
368 if (info_offset > UINT32_MAX - 8 || info_offset + 8 > avpkt->
size) {
370 "Invalid INFO header offset: 0x%08X is too large.\n",
381 data_size = (avpkt->
size - info_offset) & ~1;
405 coding_type = (
AV_RL32(src) >> 8) & 0xFF;
408 switch (coding_type) {
454 *got_picture_ptr = 1;