| Index: webrtc/video_engine/encoder_state_feedback.cc
|
| diff --git a/webrtc/video_engine/encoder_state_feedback.cc b/webrtc/video_engine/encoder_state_feedback.cc
|
| index 4d9db5847d860431136a51ad07094f646dd1deb0..55a0c4394660876d28c43b0e2d204665c042b311 100644
|
| --- a/webrtc/video_engine/encoder_state_feedback.cc
|
| +++ b/webrtc/video_engine/encoder_state_feedback.cc
|
| @@ -54,34 +54,16 @@ EncoderStateFeedback::~EncoderStateFeedback() {
|
| assert(encoders_.empty());
|
| }
|
|
|
| -void EncoderStateFeedback::UpdateSsrcs(const std::vector<uint32_t>& ssrcs,
|
| - ViEEncoder* encoder) {
|
| +void EncoderStateFeedback::AddEncoder(const std::vector<uint32_t>& ssrcs,
|
| + ViEEncoder* encoder) {
|
| + DCHECK(!ssrcs.empty());
|
| CriticalSectionScoped lock(crit_.get());
|
| - SsrcEncoderMap::iterator it = encoders_.begin();
|
| - while (it != encoders_.end()) {
|
| - if (it->second == encoder) {
|
| - encoders_.erase(it++);
|
| - } else {
|
| - ++it;
|
| - }
|
| - }
|
| for (uint32_t ssrc : ssrcs) {
|
| DCHECK(encoders_.find(ssrc) == encoders_.end());
|
| encoders_[ssrc] = encoder;
|
| }
|
| }
|
|
|
| -bool EncoderStateFeedback::AddEncoder(uint32_t ssrc, ViEEncoder* encoder) {
|
| - CriticalSectionScoped lock(crit_.get());
|
| - if (encoders_.find(ssrc) != encoders_.end()) {
|
| - // Two encoders must not have the same ssrc.
|
| - return false;
|
| - }
|
| -
|
| - encoders_[ssrc] = encoder;
|
| - return true;
|
| -}
|
| -
|
| void EncoderStateFeedback::RemoveEncoder(const ViEEncoder* encoder) {
|
| CriticalSectionScoped lock(crit_.get());
|
| SsrcEncoderMap::iterator it = encoders_.begin();
|
|
|