summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/webrtc/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/webrtc/config.h')
-rw-r--r--chromium/third_party/webrtc/config.h55
1 files changed, 40 insertions, 15 deletions
diff --git a/chromium/third_party/webrtc/config.h b/chromium/third_party/webrtc/config.h
index 3ff3bb861f7..7717bbad9e3 100644
--- a/chromium/third_party/webrtc/config.h
+++ b/chromium/third_party/webrtc/config.h
@@ -16,6 +16,7 @@
#include <string>
#include <vector>
+#include "webrtc/common_types.h"
#include "webrtc/typedefs.h"
namespace webrtc {
@@ -33,6 +34,15 @@ struct RtpStatistics {
std::string c_name;
};
+struct StreamStats {
+ StreamStats() : key_frames(0), delta_frames(0), bitrate_bps(0) {}
+ uint32_t key_frames;
+ uint32_t delta_frames;
+ int32_t bitrate_bps;
+ StreamDataCounters rtp_stats;
+ RtcpStatistics rtcp_stats;
+};
+
// Settings for NACK, see RFC 4585 for details.
struct NackConfig {
NackConfig() : rtp_history_ms(0) {}
@@ -47,6 +57,7 @@ struct NackConfig {
// payload types to '-1' to disable.
struct FecConfig {
FecConfig() : ulpfec_payload_type(-1), red_payload_type(-1) {}
+ std::string ToString() const;
// Payload type used for ULPFEC packets.
int ulpfec_payload_type;
@@ -54,28 +65,42 @@ struct FecConfig {
int red_payload_type;
};
-// Settings for RTP retransmission payload format, see RFC 4588 for details.
-struct RtxConfig {
- RtxConfig() : rtx_payload_type(0), video_payload_type(0) {}
- // SSRCs to use for the RTX streams.
- std::vector<uint32_t> ssrcs;
-
- // Payload type to use for the RTX stream.
- int rtx_payload_type;
-
- // Original video payload this RTX stream is used for.
- int video_payload_type;
-};
-
// RTP header extension to use for the video stream, see RFC 5285.
struct RtpExtension {
- static const char* kTOffset;
- static const char* kAbsSendTime;
RtpExtension(const char* name, int id) : name(name), id(id) {}
+ std::string ToString() const;
// TODO(mflodman) Add API to query supported extensions.
+ static const char* kTOffset;
+ static const char* kAbsSendTime;
std::string name;
int id;
};
+
+struct VideoStream {
+ VideoStream()
+ : width(0),
+ height(0),
+ max_framerate(-1),
+ min_bitrate_bps(-1),
+ target_bitrate_bps(-1),
+ max_bitrate_bps(-1),
+ max_qp(-1) {}
+ std::string ToString() const;
+
+ size_t width;
+ size_t height;
+ int max_framerate;
+
+ int min_bitrate_bps;
+ int target_bitrate_bps;
+ int max_bitrate_bps;
+
+ int max_qp;
+
+ // Bitrate thresholds for enabling additional temporal layers.
+ std::vector<int> temporal_layers;
+};
+
} // namespace webrtc
#endif // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_CONFIG_H_