0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00

obs-ffmpeg: Add new rate control method mappings for AVC/HEVC

This commit is contained in:
Roman Huts 2022-12-09 16:40:37 -05:00 committed by Jim
parent c15cd23fcb
commit 4ba6b8b6ee

View File

@ -1189,8 +1189,18 @@ static inline int get_avc_rate_control(const char *rc_str)
{
if (astrcmpi(rc_str, "cqp") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_CONSTANT_QP;
else if (astrcmpi(rc_str, "cbr") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_CBR;
else if (astrcmpi(rc_str, "vbr") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_PEAK_CONSTRAINED_VBR;
else if (astrcmpi(rc_str, "vbr_lat") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_LATENCY_CONSTRAINED_VBR;
else if (astrcmpi(rc_str, "qvbr") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_QUALITY_VBR;
else if (astrcmpi(rc_str, "hqvbr") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_HIGH_QUALITY_VBR;
else if (astrcmpi(rc_str, "hqcbr") == 0)
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_HIGH_QUALITY_CBR;
return AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_CBR;
}
@ -1514,8 +1524,18 @@ static inline int get_hevc_rate_control(const char *rc_str)
{
if (astrcmpi(rc_str, "cqp") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_CONSTANT_QP;
else if (astrcmpi(rc_str, "vbr_lat") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_LATENCY_CONSTRAINED_VBR;
else if (astrcmpi(rc_str, "vbr") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_PEAK_CONSTRAINED_VBR;
else if (astrcmpi(rc_str, "cbr") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_CBR;
else if (astrcmpi(rc_str, "qvbr") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_QUALITY_VBR;
else if (astrcmpi(rc_str, "hqvbr") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_HIGH_QUALITY_VBR;
else if (astrcmpi(rc_str, "hqcbr") == 0)
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_HIGH_QUALITY_CBR;
return AMF_VIDEO_ENCODER_HEVC_RATE_CONTROL_METHOD_CBR;
}