OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #ifndef WEBRTC_VIDEO_RECEIVE_STREAM_H_ | 11 #ifndef WEBRTC_VIDEO_RECEIVE_STREAM_H_ |
12 #define WEBRTC_VIDEO_RECEIVE_STREAM_H_ | 12 #define WEBRTC_VIDEO_RECEIVE_STREAM_H_ |
13 | 13 |
14 #include <map> | 14 #include <map> |
15 #include <string> | 15 #include <string> |
16 #include <vector> | 16 #include <vector> |
17 | 17 |
18 #include "webrtc/common_types.h" | 18 #include "webrtc/common_types.h" |
19 #include "webrtc/config.h" | 19 #include "webrtc/config.h" |
20 #include "webrtc/frame_callback.h" | 20 #include "webrtc/frame_callback.h" |
21 #include "webrtc/stream.h" | 21 #include "webrtc/stream.h" |
22 #include "webrtc/transport.h" | 22 #include "webrtc/transport.h" |
23 #include "webrtc/video_renderer.h" | 23 #include "webrtc/video_renderer.h" |
24 | 24 |
25 namespace webrtc { | 25 namespace webrtc { |
26 | 26 |
27 namespace newapi { | |
28 // RTCP mode to use. Compound mode is described by RFC 4585 and reduced-size | |
29 // RTCP mode is described by RFC 5506. | |
30 enum RtcpMode { kRtcpCompound, kRtcpReducedSize }; | |
31 } // namespace newapi | |
32 | |
33 class VideoDecoder; | 27 class VideoDecoder; |
34 | 28 |
35 class VideoReceiveStream : public ReceiveStream { | 29 class VideoReceiveStream : public ReceiveStream { |
36 public: | 30 public: |
37 // TODO(mflodman) Move all these settings to VideoDecoder and move the | 31 // TODO(mflodman) Move all these settings to VideoDecoder and move the |
38 // declaration to common_types.h. | 32 // declaration to common_types.h. |
39 struct Decoder { | 33 struct Decoder { |
40 std::string ToString() const; | 34 std::string ToString() const; |
41 | 35 |
42 // The actual decoder instance. | 36 // The actual decoder instance. |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 // Receive-stream specific RTP settings. | 94 // Receive-stream specific RTP settings. |
101 struct Rtp { | 95 struct Rtp { |
102 std::string ToString() const; | 96 std::string ToString() const; |
103 | 97 |
104 // Synchronization source (stream identifier) to be received. | 98 // Synchronization source (stream identifier) to be received. |
105 uint32_t remote_ssrc = 0; | 99 uint32_t remote_ssrc = 0; |
106 // Sender SSRC used for sending RTCP (such as receiver reports). | 100 // Sender SSRC used for sending RTCP (such as receiver reports). |
107 uint32_t local_ssrc = 0; | 101 uint32_t local_ssrc = 0; |
108 | 102 |
109 // See RtcpMode for description. | 103 // See RtcpMode for description. |
110 newapi::RtcpMode rtcp_mode = newapi::kRtcpCompound; | 104 RtcpMode rtcp_mode = RtcpMode::kCompound; |
111 | 105 |
112 // Extended RTCP settings. | 106 // Extended RTCP settings. |
113 struct RtcpXr { | 107 struct RtcpXr { |
114 // True if RTCP Receiver Reference Time Report Block extension | 108 // True if RTCP Receiver Reference Time Report Block extension |
115 // (RFC 3611) should be enabled. | 109 // (RFC 3611) should be enabled. |
116 bool receiver_reference_time_report = false; | 110 bool receiver_reference_time_report = false; |
117 } rtcp_xr; | 111 } rtcp_xr; |
118 | 112 |
119 // See draft-alvestrand-rmcat-remb for information. | 113 // See draft-alvestrand-rmcat-remb for information. |
120 bool remb = false; | 114 bool remb = false; |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 int target_delay_ms = 0; | 169 int target_delay_ms = 0; |
176 }; | 170 }; |
177 | 171 |
178 // TODO(pbos): Add info on currently-received codec to Stats. | 172 // TODO(pbos): Add info on currently-received codec to Stats. |
179 virtual Stats GetStats() const = 0; | 173 virtual Stats GetStats() const = 0; |
180 }; | 174 }; |
181 | 175 |
182 } // namespace webrtc | 176 } // namespace webrtc |
183 | 177 |
184 #endif // WEBRTC_VIDEO_RECEIVE_STREAM_H_ | 178 #endif // WEBRTC_VIDEO_RECEIVE_STREAM_H_ |
OLD | NEW |