| Index: webrtc/logging/rtc_event_log/rtc_event_log.h
|
| diff --git a/webrtc/logging/rtc_event_log/rtc_event_log.h b/webrtc/logging/rtc_event_log/rtc_event_log.h
|
| index 5a7067de53dd19a3bc749a642a340679d0c11f82..69c380c20fe0d606d99956644ca5b82591e88673 100644
|
| --- a/webrtc/logging/rtc_event_log/rtc_event_log.h
|
| +++ b/webrtc/logging/rtc_event_log/rtc_event_log.h
|
| @@ -11,81 +11,54 @@
|
| #ifndef WEBRTC_LOGGING_RTC_EVENT_LOG_RTC_EVENT_LOG_H_
|
| #define WEBRTC_LOGGING_RTC_EVENT_LOG_RTC_EVENT_LOG_H_
|
|
|
| -#include <memory>
|
| #include <string>
|
| -#include <vector>
|
|
|
| #include "webrtc/api/array_view.h"
|
| #include "webrtc/api/rtpparameters.h"
|
| #include "webrtc/common_types.h"
|
| +#include "webrtc/logging/rtc_event_log/encoder/rtc_event_log_encoder.h"
|
| +// TODO(eladalon): Remove this in an upcoming CL, that will modularize the
|
| +// log output into its own class.
|
| #include "webrtc/rtc_base/platform_file.h"
|
|
|
| namespace webrtc {
|
|
|
| -// Forward declaration of storage class that is automatically generated from
|
| -// the protobuf file.
|
| -namespace rtclog {
|
| -class EventStream;
|
| -
|
| -struct StreamConfig {
|
| - uint32_t local_ssrc = 0;
|
| - uint32_t remote_ssrc = 0;
|
| - uint32_t rtx_ssrc = 0;
|
| - std::string rsid;
|
| -
|
| - bool remb = false;
|
| - std::vector<RtpExtension> rtp_extensions;
|
| -
|
| - RtcpMode rtcp_mode = RtcpMode::kReducedSize;
|
| -
|
| - struct Codec {
|
| - Codec(const std::string& payload_name,
|
| - int payload_type,
|
| - int rtx_payload_type)
|
| - : payload_name(payload_name),
|
| - payload_type(payload_type),
|
| - rtx_payload_type(rtx_payload_type) {}
|
| -
|
| - std::string payload_name;
|
| - int payload_type;
|
| - int rtx_payload_type;
|
| - };
|
| - std::vector<Codec> codecs;
|
| -};
|
| -
|
| -} // namespace rtclog
|
| -
|
| +// TODO(eladalon): !!! Which are no longer needed?
|
| class Clock;
|
| struct AudioEncoderRuntimeConfig;
|
| class RtpPacketReceived;
|
| class RtpPacketToSend;
|
| -
|
| -enum class MediaType;
|
| enum class BandwidthUsage;
|
|
|
| -enum PacketDirection { kIncomingPacket = 0, kOutgoingPacket };
|
| -enum ProbeFailureReason {
|
| - kInvalidSendReceiveInterval,
|
| - kInvalidSendReceiveRatio,
|
| - kTimeout
|
| -};
|
| +// TODO(eladalon): Two stages are upcoming.
|
| +// 1. Extend this to actually support the new encoding.
|
| +// 2. Get rid of the legacy encoding, allowing us to get rid of this enum.
|
| +enum class EncodingType { Legacy };
|
|
|
| class RtcEventLog {
|
| public:
|
| virtual ~RtcEventLog() {}
|
|
|
| // Factory method to create an RtcEventLog object.
|
| - static std::unique_ptr<RtcEventLog> Create();
|
| + // TODO(eladalon): Get rid of the default value after internal projects fixed.
|
| + static std::unique_ptr<RtcEventLog> Create(
|
| + EncodingType encoding_type = EncodingType::Legacy);
|
| // TODO(nisse): webrtc::Clock is deprecated. Delete this method and
|
| // above forward declaration of Clock when
|
| // webrtc/system_wrappers/include/clock.h is deleted.
|
| - static std::unique_ptr<RtcEventLog> Create(const Clock* clock) {
|
| - return Create();
|
| + // TODO(eladalon): Get rid of the default value after internal projects fixed.
|
| + static std::unique_ptr<RtcEventLog> Create(
|
| + const Clock* clock,
|
| + EncodingType encoding_type = EncodingType::Legacy) {
|
| + return Create(encoding_type);
|
| }
|
|
|
| // Create an RtcEventLog object that does nothing.
|
| static std::unique_ptr<RtcEventLog> CreateNull();
|
|
|
| + // TODO(eladalon): !!! Explain
|
| + static std::unique_ptr<RtcEventLogEncoder> CreateEncoder(EncodingType type);
|
| +
|
| // Starts logging a maximum of max_size_bytes bytes to the specified file.
|
| // If the file already exists it will be overwritten.
|
| // If max_size_bytes <= 0, logging will be active until StopLogging is called.
|
|
|