avcodec/kmvc: Prefer in-band palette
Fixes decoding of https://samples.ffmpeg.org/V-codecs/KMVC/LOGO2.AVI Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
This commit is contained in:
@@ -275,6 +275,8 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
|
|||||||
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
|
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
frame->palette_has_changed = ff_copy_palette(ctx->pal, avpkt, avctx);
|
||||||
|
|
||||||
header = bytestream2_get_byte(&ctx->g);
|
header = bytestream2_get_byte(&ctx->g);
|
||||||
|
|
||||||
/* blocksize 127 is really palette change event */
|
/* blocksize 127 is really palette change event */
|
||||||
@@ -303,9 +305,6 @@ static int decode_frame(AVCodecContext * avctx, void *data, int *got_frame,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ff_copy_palette(ctx->pal, avpkt, avctx))
|
|
||||||
frame->palette_has_changed = 1;
|
|
||||||
|
|
||||||
if (ctx->setpal) {
|
if (ctx->setpal) {
|
||||||
ctx->setpal = 0;
|
ctx->setpal = 0;
|
||||||
frame->palette_has_changed = 1;
|
frame->palette_has_changed = 1;
|
||||||
|
Reference in New Issue
Block a user