Inform VideoEncoder of negotiated capabilities
After this CL lands, an announcement will be made to discuss-webrtc about the deprecation of one version of InitEncode(). Bug: webrtc:10720 Change-Id: Ib992af0272bbb16ae16ef7e69491f365702d179e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140884 Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> Reviewed-by: Erik Språng <sprang@webrtc.org> Commit-Queue: Elad Alon <eladalon@webrtc.org> Cr-Commit-Position: refs/heads/master@{#28224}
This commit is contained in:
@ -401,9 +401,16 @@ void VP9EncoderImpl::SetRates(const RateControlParameters& parameters) {
|
||||
return;
|
||||
}
|
||||
|
||||
int VP9EncoderImpl::InitEncode(const VideoCodec* inst,
|
||||
int VP9EncoderImpl::InitEncode(const VideoCodec* codec_settings,
|
||||
int number_of_cores,
|
||||
size_t /*max_payload_size*/) {
|
||||
size_t max_payload_size) {
|
||||
RTC_NOTREACHED();
|
||||
return WEBRTC_VIDEO_CODEC_ERROR;
|
||||
}
|
||||
|
||||
// TODO(eladalon): s/inst/codec_settings/g.
|
||||
int VP9EncoderImpl::InitEncode(const VideoCodec* inst,
|
||||
const Settings& settings) {
|
||||
if (inst == nullptr) {
|
||||
return WEBRTC_VIDEO_CODEC_ERR_PARAMETER;
|
||||
}
|
||||
@ -417,7 +424,7 @@ int VP9EncoderImpl::InitEncode(const VideoCodec* inst,
|
||||
if (inst->width < 1 || inst->height < 1) {
|
||||
return WEBRTC_VIDEO_CODEC_ERR_PARAMETER;
|
||||
}
|
||||
if (number_of_cores < 1) {
|
||||
if (settings.number_of_cores < 1) {
|
||||
return WEBRTC_VIDEO_CODEC_ERR_PARAMETER;
|
||||
}
|
||||
if (inst->VP9().numberOfTemporalLayers > 3) {
|
||||
@ -526,7 +533,7 @@ int VP9EncoderImpl::InitEncode(const VideoCodec* inst,
|
||||
config_->rc_resize_allowed = inst->VP9().automaticResizeOn ? 1 : 0;
|
||||
// Determine number of threads based on the image size and #cores.
|
||||
config_->g_threads =
|
||||
NumberOfThreads(config_->g_w, config_->g_h, number_of_cores);
|
||||
NumberOfThreads(config_->g_w, config_->g_h, settings.number_of_cores);
|
||||
|
||||
cpu_speed_ = GetCpuSpeed(config_->g_w, config_->g_h);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user