Index: webrtc/api/rtcstatscollector.h |
diff --git a/webrtc/api/rtcstatscollector.h b/webrtc/api/rtcstatscollector.h |
index 08bab803e25809288925d0a301670e55d325fae2..c32d65f2460a83447946b70430b5bf1bc05b5074 100644 |
--- a/webrtc/api/rtcstatscollector.h |
+++ b/webrtc/api/rtcstatscollector.h |
@@ -21,11 +21,13 @@ |
#include "webrtc/api/stats/rtcstats_objects.h" |
#include "webrtc/api/stats/rtcstatsreport.h" |
#include "webrtc/base/asyncinvoker.h" |
+#include "webrtc/base/optional.h" |
#include "webrtc/base/refcount.h" |
#include "webrtc/base/scoped_ref_ptr.h" |
#include "webrtc/base/sigslot.h" |
#include "webrtc/base/sslidentity.h" |
#include "webrtc/base/timeutils.h" |
+#include "webrtc/media/base/mediachannel.h" |
namespace cricket { |
class Candidate; |
@@ -86,6 +88,10 @@ class RTCStatsCollector : public virtual rtc::RefCountInterface, |
std::unique_ptr<rtc::SSLCertificateStats> local; |
std::unique_ptr<rtc::SSLCertificateStats> remote; |
}; |
+ struct MediaInfo { |
+ rtc::Optional<cricket::VoiceMediaInfo> voice; |
+ rtc::Optional<cricket::VideoMediaInfo> video; |
+ }; |
void AddPartialResults_s(rtc::scoped_refptr<RTCStatsReport> partial_report); |
void DeliverCachedReport(); |
@@ -95,6 +101,10 @@ class RTCStatsCollector : public virtual rtc::RefCountInterface, |
int64_t timestamp_us, |
const std::map<std::string, CertificateStatsPair>& transport_cert_stats, |
RTCStatsReport* report) const; |
+ // Produces |RTCCodecStats|. |
+ void ProduceCodecStats_s( |
+ int64_t timestamp_us, const MediaInfo& media_info, |
+ RTCStatsReport* report) const; |
// Produces |RTCDataChannelStats|. |
void ProduceDataChannelStats_s( |
int64_t timestamp_us, RTCStatsReport* report) const; |
@@ -111,7 +121,7 @@ class RTCStatsCollector : public virtual rtc::RefCountInterface, |
// Produces |RTCInboundRTPStreamStats| and |RTCOutboundRTPStreamStats|. |
void ProduceRTPStreamStats_s( |
int64_t timestamp_us, const SessionStats& session_stats, |
- RTCStatsReport* report) const; |
+ const MediaInfo& media_info, RTCStatsReport* report) const; |
// Produces |RTCTransportStats|. |
void ProduceTransportStats_s( |
int64_t timestamp_us, const SessionStats& session_stats, |
@@ -120,7 +130,8 @@ class RTCStatsCollector : public virtual rtc::RefCountInterface, |
// Helper function to stats-producing functions. |
std::map<std::string, CertificateStatsPair> |
- PrepareTransportCertificateStats_s(const SessionStats& session_stats) const; |
+ PrepareTransportCertificateStats(const SessionStats& session_stats) const; |
+ MediaInfo PrepareMediaInfo(const SessionStats& session_stats) const; |
// Slots for signals (sigslot) that are wired up to |pc_|. |
void OnDataChannelCreated(DataChannel* channel); |