diff options
Diffstat (limited to 'libavcodec/nvenc.c')
-rw-r--r-- | libavcodec/nvenc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index 283a71c294..d28b347c6b 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -588,8 +588,9 @@ static int nvenc_setup_h264_config(AVCodecContext *avctx) NV_ENC_CONFIG_H264 *h264 = &cc->encodeCodecConfig.h264Config; NV_ENC_CONFIG_H264_VUI_PARAMETERS *vui = &h264->h264VUIParameters; - vui->colourDescriptionPresentFlag = 1; - vui->videoSignalTypePresentFlag = 1; + vui->colourDescriptionPresentFlag = avctx->colorspace != AVCOL_SPC_UNSPECIFIED || + avctx->color_primaries != AVCOL_PRI_UNSPECIFIED || + avctx->color_trc != AVCOL_TRC_UNSPECIFIED; vui->colourMatrix = avctx->colorspace; vui->colourPrimaries = avctx->color_primaries; @@ -597,6 +598,9 @@ static int nvenc_setup_h264_config(AVCodecContext *avctx) vui->videoFullRangeFlag = avctx->color_range == AVCOL_RANGE_JPEG; + vui->videoSignalTypePresentFlag = vui->colourDescriptionPresentFlag || + vui->videoFullRangeFlag; + h264->disableSPSPPS = (avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER) ? 1 : 0; h264->repeatSPSPPS = (avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER) ? 0 : 1; h264->outputAUD = 1; |