Remove duplicate decoders in BitrateEstimatorTest.

Multiple decoders were used for the same payload type in this test case,
causing CHECK failures when configuring.

BUG=webrtc:5249
TBR=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1484443003 .

Cr-Commit-Position: refs/heads/master@{#10825}
diff --git a/webrtc/call/bitrate_estimator_tests.cc b/webrtc/call/bitrate_estimator_tests.cc
index 54a78ea..3ce96f6 100644
--- a/webrtc/call/bitrate_estimator_tests.cc
+++ b/webrtc/call/bitrate_estimator_tests.cc
@@ -210,6 +210,7 @@
             test_->send_config_.encoder_settings.payload_type;
         decoder.payload_name =
             test_->send_config_.encoder_settings.payload_name;
+        test_->receive_config_.decoders.clear();
         test_->receive_config_.decoders.push_back(decoder);
         test_->receive_config_.rtp.remote_ssrc =
             test_->send_config_.rtp.ssrcs[0];
diff --git a/webrtc/video/video_receive_stream.cc b/webrtc/video/video_receive_stream.cc
index 850848e..4d606ef 100644
--- a/webrtc/video/video_receive_stream.cc
+++ b/webrtc/video/video_receive_stream.cc
@@ -259,9 +259,15 @@
   vie_channel_->RegisterRtcpPacketTypeCounterObserver(stats_proxy_.get());
 
   RTC_DCHECK(!config_.decoders.empty());
+  std::set<int> decoder_payload_types;
   for (size_t i = 0; i < config_.decoders.size(); ++i) {
     const Decoder& decoder = config_.decoders[i];
     RTC_CHECK(decoder.decoder);
+    RTC_CHECK(decoder_payload_types.find(decoder.payload_type) ==
+              decoder_payload_types.end())
+        << "Duplicate payload type (" << decoder.payload_type
+        << ") for different decoders.";
+    decoder_payload_types.insert(decoder.payload_type);
     RTC_CHECK_EQ(0,
                  vie_channel_->RegisterExternalDecoder(
                      decoder.payload_type, decoder.decoder, decoder.is_renderer,