summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/rawdec.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libavcodec/rawdec.c b/libavcodec/rawdec.c
index 1bde67993a..1259577397 100644
--- a/libavcodec/rawdec.c
+++ b/libavcodec/rawdec.c
@@ -204,8 +204,9 @@ static int raw_decode(AVCodecContext *avctx, void *data, int *got_frame,
desc = av_pix_fmt_desc_get(avctx->pix_fmt);
- if ((avctx->bits_per_coded_sample == 8 || avctx->bits_per_coded_sample == 4
- || avctx->bits_per_coded_sample <= 2) &&
+ if ((avctx->bits_per_coded_sample == 8 || avctx->bits_per_coded_sample == 4 ||
+ avctx->bits_per_coded_sample == 2 || avctx->bits_per_coded_sample == 1 ||
+ (avctx->bits_per_coded_sample == 0 && (context->is_nut_pal8 || context->is_mono)) ) &&
(context->is_mono || context->is_pal8) &&
(!avctx->codec_tag || avctx->codec_tag == MKTAG('r','a','w',' ') ||
context->is_nut_mono || context->is_nut_pal8)) {