mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 13:50:40 +01:00

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}
33 lines
1.2 KiB
C++
33 lines
1.2 KiB
C++
/*
|
|
* Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#ifndef MODULES_VIDEO_CODING_UTILITY_SIMULCAST_UTILITY_H_
|
|
#define MODULES_VIDEO_CODING_UTILITY_SIMULCAST_UTILITY_H_
|
|
|
|
#include <stdint.h>
|
|
|
|
#include "api/video_codecs/video_codec.h"
|
|
|
|
namespace webrtc {
|
|
|
|
class SimulcastUtility {
|
|
public:
|
|
static uint32_t SumStreamMaxBitrate(int streams, const VideoCodec& codec);
|
|
static int NumberOfSimulcastStreams(const VideoCodec& codec);
|
|
static bool ValidSimulcastParameters(const VideoCodec& codec,
|
|
int num_streams);
|
|
static int NumberOfTemporalLayers(const VideoCodec& codec, int spatial_id);
|
|
// TODO(sprang): Remove this hack when ScreenshareLayers is gone.
|
|
static bool IsConferenceModeScreenshare(const VideoCodec& codec);
|
|
};
|
|
|
|
} // namespace webrtc
|
|
|
|
#endif // MODULES_VIDEO_CODING_UTILITY_SIMULCAST_UTILITY_H_
|