ffv1: Error out on unsupported format
Transparency is supported only by YUV and within specific bit depths.
This commit is contained in:
parent
105998fb5c
commit
ec9f04423b
@ -597,6 +597,12 @@ static int read_header(FFV1Context *f)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (f->colorspace == 0) {
|
if (f->colorspace == 0) {
|
||||||
|
if (f->transparency && f->avctx->bits_per_raw_sample > 8) {
|
||||||
|
av_log(f->avctx, AV_LOG_ERROR,
|
||||||
|
"Transparency not supported for bit depth %d\n",
|
||||||
|
f->avctx->bits_per_raw_sample);
|
||||||
|
return AVERROR(ENOSYS);
|
||||||
|
}
|
||||||
if (!f->transparency && !f->chroma_planes) {
|
if (!f->transparency && !f->chroma_planes) {
|
||||||
if (f->avctx->bits_per_raw_sample <= 8)
|
if (f->avctx->bits_per_raw_sample <= 8)
|
||||||
f->avctx->pix_fmt = AV_PIX_FMT_GRAY8;
|
f->avctx->pix_fmt = AV_PIX_FMT_GRAY8;
|
||||||
@ -695,6 +701,11 @@ static int read_header(FFV1Context *f)
|
|||||||
"chroma subsampling not supported in this colorspace\n");
|
"chroma subsampling not supported in this colorspace\n");
|
||||||
return AVERROR(ENOSYS);
|
return AVERROR(ENOSYS);
|
||||||
}
|
}
|
||||||
|
if (f->transparency) {
|
||||||
|
av_log(f->avctx, AV_LOG_ERROR,
|
||||||
|
"Transparency not supported in this colorspace\n");
|
||||||
|
return AVERROR(ENOSYS);
|
||||||
|
}
|
||||||
switch (f->avctx->bits_per_raw_sample) {
|
switch (f->avctx->bits_per_raw_sample) {
|
||||||
case 0:
|
case 0:
|
||||||
case 8:
|
case 8:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user