1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

Support flicvideo with 904 bytes extradata.

Fixes ticket #1234.
This commit is contained in:
Carl Eugen Hoyos 2012-04-22 22:07:02 +02:00
parent 2ea5f866e6
commit 2e07f42957

View File

@ -86,8 +86,9 @@ static av_cold int flic_decode_init(AVCodecContext *avctx)
if (avctx->extradata_size != 0 && if (avctx->extradata_size != 0 &&
avctx->extradata_size != 12 && avctx->extradata_size != 12 &&
avctx->extradata_size != 128 && avctx->extradata_size != 128 &&
avctx->extradata_size != 904 &&
avctx->extradata_size != 1024) { avctx->extradata_size != 1024) {
av_log(avctx, AV_LOG_ERROR, "Expected extradata of 12, 128 or 1024 bytes, got %d\n", avctx->extradata_size); av_log(avctx, AV_LOG_ERROR, "Unexpected extradata size %d\n", avctx->extradata_size);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
@ -106,8 +107,10 @@ static av_cold int flic_decode_init(AVCodecContext *avctx)
ptr += 4; ptr += 4;
} }
depth = 8; depth = 8;
} else if (avctx->extradata_size == 0) {
/* FLI in MOV, see e.g. FFmpeg trac issue #626 */ /* FLI in MOV, see e.g. FFmpeg trac issue #626 */
} else if (avctx->extradata_size == 0 ||
/* see FFmpeg ticket #1234 */
avctx->extradata_size == 904) {
s->fli_type = FLI_TYPE_CODE; s->fli_type = FLI_TYPE_CODE;
depth = 8; depth = 8;
} else { } else {