AVFrame *frame = data;
int ret, y, x;
+ if (avpkt->size < 8)
+ return AVERROR_INVALIDDATA;
+
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;
memcpy(dst, src, avctx->width * s->bpp);
dst -= frame->linesize[0];
src += s->stride * 4;
+ if (bytestream2_tell_p(pb) < y*s->stride * 4)
+ break;
}
} else {
unsigned block, nb_blocks;
switch (avctx->bits_per_coded_sample) {
case 16:
- avctx->pix_fmt = AV_PIX_FMT_RGB555;
+ avctx->pix_fmt = AV_PIX_FMT_RGB555LE;
break;
case 24:
avctx->pix_fmt = AV_PIX_FMT_BGR24;