Fix vp8 simulcast screenshare and perf tests for it

Simulcast screenshare appears broken due to unrelated changes. It
implicitly relied on SimulcastEncoderAdapter fallback, which happened before
if streams had same resolution. It's not the case anymore. Thus, this CL
adds checks for different frame-rate in simulcast streams.

FullStackTests are also updated to use actual parameters.

Bug: none
Change-Id: I2c1ddb1b39edb96464a0915dfcb9cb4e18844187
Reviewed-on: https://webrtc-review.googlesource.com/c/124494
Reviewed-by: Mirta Dvornicic <mirtad@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26869}
This commit is contained in:
Ilya Nikolaevskiy
2019-02-27 10:00:06 +01:00
committed by Commit Bot
parent 08f6a6c672
commit dda5fdcb82
5 changed files with 32 additions and 30 deletions

View File

@ -211,10 +211,8 @@ int32_t H264EncoderImpl::InitEncode(const VideoCodec* inst,
int number_of_streams = SimulcastUtility::NumberOfSimulcastStreams(*inst);
bool doing_simulcast = (number_of_streams > 1);
if (doing_simulcast && (!SimulcastUtility::ValidSimulcastResolutions(
*inst, number_of_streams) ||
!SimulcastUtility::ValidSimulcastTemporalLayers(
*inst, number_of_streams))) {
if (doing_simulcast &&
!SimulcastUtility::ValidSimulcastParameters(*inst, number_of_streams)) {
return WEBRTC_VIDEO_CODEC_ERR_SIMULCAST_PARAMETERS_NOT_SUPPORTED;
}
downscaled_buffers_.resize(number_of_streams - 1);