Reverse |rtx_payload_types| map, and rename.
New name is |rtx_associated_payload_types|.
BUG=webrtc:7135
Review-Url: https://codereview.webrtc.org/3000273002
Cr-Commit-Position: refs/heads/master@{#19514}
diff --git a/webrtc/call/call.cc b/webrtc/call/call.cc
index cee0036..b1f56d3 100644
--- a/webrtc/call/call.cc
+++ b/webrtc/call/call.cc
@@ -86,6 +86,14 @@
return UseSendSideBwe(config.rtp_header_extensions, config.transport_cc);
}
+const int* FindKeyByValue(const std::map<int, int>& m, int v) {
+ for (const auto& kv : m) {
+ if (kv.second == v)
+ return &kv.first;
+ }
+ return nullptr;
+}
+
rtclog::StreamConfig CreateRtcLogStreamConfig(
const VideoReceiveStream::Config& config) {
rtclog::StreamConfig rtclog_config;
@@ -97,10 +105,10 @@
rtclog_config.rtp_extensions = config.rtp.extensions;
for (const auto& d : config.decoders) {
- auto search = config.rtp.rtx_payload_types.find(d.payload_type);
- rtclog_config.codecs.emplace_back(
- d.payload_name, d.payload_type,
- search != config.rtp.rtx_payload_types.end() ? search->second : 0);
+ const int* search =
+ FindKeyByValue(config.rtp.rtx_associated_payload_types, d.payload_type);
+ rtclog_config.codecs.emplace_back(d.payload_name, d.payload_type,
+ search ? *search : 0);
}
return rtclog_config;
}
diff --git a/webrtc/call/rampup_tests.cc b/webrtc/call/rampup_tests.cc
index cfb5117..ed44dad 100644
--- a/webrtc/call/rampup_tests.cc
+++ b/webrtc/call/rampup_tests.cc
@@ -215,8 +215,8 @@
if (rtx_) {
recv_config.rtp.rtx_ssrc = video_rtx_ssrcs_[i];
recv_config.rtp
- .rtx_payload_types[send_config->encoder_settings.payload_type] =
- send_config->rtp.rtx.payload_type;
+ .rtx_associated_payload_types[send_config->rtp.rtx.payload_type] =
+ send_config->encoder_settings.payload_type;
}
++i;
}
diff --git a/webrtc/call/video_receive_stream.cc b/webrtc/call/video_receive_stream.cc
index bc65869..ef6c608 100644
--- a/webrtc/call/video_receive_stream.cc
+++ b/webrtc/call/video_receive_stream.cc
@@ -113,8 +113,8 @@
ss << ", ulpfec: " << ulpfec.ToString();
ss << ", rtx_ssrc: " << rtx_ssrc;
ss << ", rtx_payload_types: {";
- for (auto& kv : rtx_payload_types) {
- ss << kv.first << " (apt) -> " << kv.second << " (pt), ";
+ for (auto& kv : rtx_associated_payload_types) {
+ ss << kv.first << " (pt) -> " << kv.second << " (apt), ";
}
ss << '}';
ss << ", extensions: [";
diff --git a/webrtc/call/video_receive_stream.h b/webrtc/call/video_receive_stream.h
index bd4b997..18e904d 100644
--- a/webrtc/call/video_receive_stream.h
+++ b/webrtc/call/video_receive_stream.h
@@ -168,14 +168,15 @@
// Set if the stream is protected using FlexFEC.
bool protected_by_flexfec = false;
- // Map from video payload type (apt) -> RTX payload type (pt).
+ // Map from rtx payload type -> media payload type.
// For RTX to be enabled, both an SSRC and this mapping are needed.
- std::map<int, int> rtx_payload_types;
+ std::map<int, int> rtx_associated_payload_types;
// TODO(nisse): This is a temporary accessor function to enable
// reversing and renaming of the rtx_payload_types mapping.
void AddRtxBinding(int rtx_payload_type, int media_payload_type) {
- rtx_payload_types[media_payload_type] = rtx_payload_type;
+ rtx_associated_payload_types[rtx_payload_type] = media_payload_type;
}
+
// RTP header extensions used for the received stream.
std::vector<RtpExtension> extensions;
} rtp;