[FFmpeg-devel] [PATCH 01/23] avcodec: add color_range to AVCodec struct and use it

Paul B Mahol onemda at gmail.com
Tue Dec 12 15:55:59 EET 2017


Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
 libavcodec/avcodec.h | 1 +
 libavcodec/utils.c   | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 5db6a81320..df715fd5ee 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -3376,6 +3376,7 @@ typedef struct AVCodec {
     uint8_t max_lowres;                     ///< maximum value for lowres supported by the decoder
     const AVClass *priv_class;              ///< AVClass for the private context
     const AVProfile *profiles;              ///< array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN}
+    const enum AVColorRange *color_ranges;  ///< array of supported color ranges by encoder, or  NULL if unknown, array is terminated by -1
 
     /*****************************************************************
      * No fields below this line are part of the public API. They
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 873f39f9bd..41cc6fbf2c 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -879,6 +879,8 @@ FF_ENABLE_DEPRECATION_WARNINGS
                 avctx->codec->pix_fmts[i] == AV_PIX_FMT_YUVJ444P)
                 avctx->color_range = AVCOL_RANGE_JPEG;
         }
+        if (avctx->codec->color_range)
+            avctx->color_range = avctx->codec->color_range;
         if (avctx->codec->supported_samplerates) {
             for (i = 0; avctx->codec->supported_samplerates[i] != 0; i++)
                 if (avctx->sample_rate == avctx->codec->supported_samplerates[i])
-- 
2.11.0



More information about the ffmpeg-devel mailing list