
Adding RidDescription to StreamParams that will contain the list of rids for the track. Adding receive_stream to MediaContentDescription to allow identifying the stream that originates from the answerer (but is referenced by the sender). For example, to signal that it will be received in Simulcast. Bug: webrtc:10073. Change-Id: Icd9a6b0a69d42bef51f525e673ce447255584334 Reviewed-on: https://webrtc-review.googlesource.com/c/113794 Commit-Queue: Amit Hilbuch <amithi@webrtc.org> Reviewed-by: Steve Anton <steveanton@webrtc.org> Reviewed-by: Seth Hampson <shampson@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25978}
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
/*
|
|
* Copyright 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.
|
|
*/
|
|
|
|
#include <utility>
|
|
|
|
#include "pc/simulcastdescription.h"
|
|
#include "rtc_base/checks.h"
|
|
|
|
namespace cricket {
|
|
|
|
SimulcastLayer::SimulcastLayer(const std::string& rid, bool is_paused)
|
|
: rid{rid}, is_paused{is_paused} {
|
|
RTC_DCHECK(!rid.empty());
|
|
}
|
|
|
|
void SimulcastLayerList::AddLayer(const SimulcastLayer& layer) {
|
|
list_.push_back({layer});
|
|
}
|
|
|
|
void SimulcastLayerList::AddLayerWithAlternatives(
|
|
const std::vector<SimulcastLayer>& rids) {
|
|
RTC_DCHECK(!rids.empty());
|
|
list_.push_back(rids);
|
|
}
|
|
|
|
const std::vector<SimulcastLayer>& SimulcastLayerList::operator[](
|
|
size_t index) const {
|
|
RTC_DCHECK_LT(index, list_.size());
|
|
return list_[index];
|
|
}
|
|
|
|
bool SimulcastDescription::empty() const {
|
|
return send_layers_.empty() && receive_layers_.empty();
|
|
}
|
|
|
|
std::vector<SimulcastLayer> SimulcastLayerList::GetAllLayers() const {
|
|
std::vector<SimulcastLayer> result;
|
|
for (auto groupIt = begin(); groupIt != end(); groupIt++) {
|
|
for (auto it = groupIt->begin(); it != groupIt->end(); it++) {
|
|
result.push_back(*it);
|
|
}
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
} // namespace cricket
|