Add ctor to RtpDemuxerCriteria to allow supplying 'mid' and 'rsid'.
Since another CL [1] grew a bit in scope, this CL needs to land first,
coupled with downstream updates.
[1]: https://webrtc-review.googlesource.com/c/src/+/244083
Bug: webrtc:12517, webrtc:11993
Change-Id: I80d826a0d3f3240a2cecf8cbe09842cba0902b16
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/244085
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35611}
diff --git a/call/BUILD.gn b/call/BUILD.gn
index b5002e4..53d3193 100644
--- a/call/BUILD.gn
+++ b/call/BUILD.gn
@@ -150,7 +150,10 @@
"../rtc_base/containers:flat_map",
"../rtc_base/containers:flat_set",
]
- absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+ absl_deps = [
+ "//third_party/abseil-cpp/absl/strings:strings",
+ "//third_party/abseil-cpp/absl/types:optional",
+ ]
}
rtc_library("rtp_sender") {
diff --git a/call/rtp_demuxer.cc b/call/rtp_demuxer.cc
index 28962fd..c839e9f 100644
--- a/call/rtp_demuxer.cc
+++ b/call/rtp_demuxer.cc
@@ -41,6 +41,11 @@
} // namespace
+RtpDemuxerCriteria::RtpDemuxerCriteria(
+ absl::string_view mid,
+ absl::string_view rsid /*= absl::string_view()*/)
+ : mid(mid), rsid(rsid) {}
+
RtpDemuxerCriteria::RtpDemuxerCriteria() = default;
RtpDemuxerCriteria::~RtpDemuxerCriteria() = default;
diff --git a/call/rtp_demuxer.h b/call/rtp_demuxer.h
index fb65fce..931dac2 100644
--- a/call/rtp_demuxer.h
+++ b/call/rtp_demuxer.h
@@ -16,6 +16,7 @@
#include <utility>
#include <vector>
+#include "absl/strings/string_view.h"
#include "rtc_base/containers/flat_map.h"
#include "rtc_base/containers/flat_set.h"
@@ -27,6 +28,8 @@
// This struct describes the criteria that will be used to match packets to a
// specific sink.
struct RtpDemuxerCriteria {
+ explicit RtpDemuxerCriteria(absl::string_view mid,
+ absl::string_view rsid = absl::string_view());
RtpDemuxerCriteria();
~RtpDemuxerCriteria();
diff --git a/call/rtp_demuxer_unittest.cc b/call/rtp_demuxer_unittest.cc
index 0c50b81..ddb151f 100644
--- a/call/rtp_demuxer_unittest.cc
+++ b/call/rtp_demuxer_unittest.cc
@@ -61,23 +61,19 @@
}
bool AddSinkOnlyRsid(const std::string& rsid, RtpPacketSinkInterface* sink) {
- RtpDemuxerCriteria criteria;
- criteria.rsid = rsid;
+ RtpDemuxerCriteria criteria(absl::string_view(), rsid);
return AddSink(criteria, sink);
}
bool AddSinkOnlyMid(const std::string& mid, RtpPacketSinkInterface* sink) {
- RtpDemuxerCriteria criteria;
- criteria.mid = mid;
+ RtpDemuxerCriteria criteria(mid);
return AddSink(criteria, sink);
}
bool AddSinkBothMidRsid(const std::string& mid,
const std::string& rsid,
RtpPacketSinkInterface* sink) {
- RtpDemuxerCriteria criteria;
- criteria.mid = mid;
- criteria.rsid = rsid;
+ RtpDemuxerCriteria criteria(mid, rsid);
return AddSink(criteria, sink);
}