diff options
author | Wenbin Chen <wenbin.chen@intel.com> | 2022-12-09 14:36:23 +0800 |
---|---|---|
committer | Haihao Xiang <haihao.xiang@intel.com> | 2023-02-27 13:42:06 +0800 |
commit | 0825b461e64b5924fdee7055643db65870d2eaae (patch) | |
tree | bb555e8f2b5b59a5cf9ee137e07d53b57a9adc36 /libavcodec | |
parent | 6489e0679d0b073dabf0e5b5c8ed5418cdeeea44 (diff) | |
download | ffmpeg-0825b461e64b5924fdee7055643db65870d2eaae.tar.gz |
libavcodec/qsvenc: Enable 444 encoding for RGB input
MSDK/VPL uses 420 chroma format as default to encode RGB, and this is
not a proper usage. Now enable 444 encoding for RGB input by default.
When main profile is used, RGB input is still encoded in 420 format.
Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/qsvenc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c index fc64a086e4..3607859cb8 100644 --- a/libavcodec/qsvenc.c +++ b/libavcodec/qsvenc.c @@ -1118,6 +1118,10 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q) q->extco3.MaxFrameSizeI = q->max_frame_size_i; if (q->max_frame_size_p >= 0) q->extco3.MaxFrameSizeP = q->max_frame_size_p; + if (sw_format == AV_PIX_FMT_BGRA && + (q->profile == MFX_PROFILE_HEVC_REXT || + q->profile == MFX_PROFILE_UNKNOWN)) + q->extco3.TargetChromaFormatPlus1 = MFX_CHROMAFORMAT_YUV444 + 1; q->extco3.ScenarioInfo = q->scenario; } else if (avctx->codec_id == AV_CODEC_ID_AV1) { |