Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(578)

Side by Side Diff: webrtc/video/rtp_stream_receiver.h

Issue 2669463006: Move RemoteBitrateEstimator::RemoveStream calls from receive streams to Call. (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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
(...skipping 23 matching lines...) Expand all
34 #include "webrtc/video_receive_stream.h" 34 #include "webrtc/video_receive_stream.h"
35 35
36 namespace webrtc { 36 namespace webrtc {
37 37
38 class NackModule; 38 class NackModule;
39 class PacedSender; 39 class PacedSender;
40 class PacketRouter; 40 class PacketRouter;
41 class ProcessThread; 41 class ProcessThread;
42 class ReceiveStatistics; 42 class ReceiveStatistics;
43 class ReceiveStatisticsProxy; 43 class ReceiveStatisticsProxy;
44 class RemoteBitrateEstimator;
45 class RemoteNtpTimeEstimator; 44 class RemoteNtpTimeEstimator;
46 class RtcpRttStats; 45 class RtcpRttStats;
47 class RtpHeaderParser; 46 class RtpHeaderParser;
48 class RTPPayloadRegistry; 47 class RTPPayloadRegistry;
49 class RtpReceiver; 48 class RtpReceiver;
50 class Transport; 49 class Transport;
51 class UlpfecReceiver; 50 class UlpfecReceiver;
52 class VCMTiming; 51 class VCMTiming;
53 class VieRemb; 52 class VieRemb;
54 53
55 namespace vcm { 54 namespace vcm {
56 class VideoReceiver; 55 class VideoReceiver;
57 } // namespace vcm 56 } // namespace vcm
58 57
59 class RtpStreamReceiver : public RtpData, 58 class RtpStreamReceiver : public RtpData,
60 public RtpFeedback, 59 public RtpFeedback,
61 public VCMFrameTypeCallback, 60 public VCMFrameTypeCallback,
62 public VCMPacketRequestCallback, 61 public VCMPacketRequestCallback,
63 public video_coding::OnReceivedFrameCallback, 62 public video_coding::OnReceivedFrameCallback,
64 public video_coding::OnCompleteFrameCallback, 63 public video_coding::OnCompleteFrameCallback,
65 public CallStatsObserver { 64 public CallStatsObserver {
66 public: 65 public:
67 RtpStreamReceiver( 66 RtpStreamReceiver(
68 vcm::VideoReceiver* video_receiver, 67 vcm::VideoReceiver* video_receiver,
69 RemoteBitrateEstimator* remote_bitrate_estimator,
70 Transport* transport, 68 Transport* transport,
71 RtcpRttStats* rtt_stats, 69 RtcpRttStats* rtt_stats,
72 PacketRouter* packet_router, 70 PacketRouter* packet_router,
73 VieRemb* remb, 71 VieRemb* remb,
74 const VideoReceiveStream::Config* config, 72 const VideoReceiveStream::Config* config,
75 ReceiveStatisticsProxy* receive_stats_proxy, 73 ReceiveStatisticsProxy* receive_stats_proxy,
76 ProcessThread* process_thread, 74 ProcessThread* process_thread,
77 NackSender* nack_sender, 75 NackSender* nack_sender,
78 KeyFrameRequestSender* keyframe_request_sender, 76 KeyFrameRequestSender* keyframe_request_sender,
79 video_coding::OnCompleteFrameCallback* complete_frame_callback, 77 video_coding::OnCompleteFrameCallback* complete_frame_callback,
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 bool IsPacketRetransmitted(const RTPHeader& header, bool in_order) const; 154 bool IsPacketRetransmitted(const RTPHeader& header, bool in_order) const;
157 void UpdateHistograms(); 155 void UpdateHistograms();
158 void EnableReceiveRtpHeaderExtension(const std::string& extension, int id); 156 void EnableReceiveRtpHeaderExtension(const std::string& extension, int id);
159 bool IsRedEnabled() const; 157 bool IsRedEnabled() const;
160 void InsertSpsPpsIntoTracker(uint8_t payload_type); 158 void InsertSpsPpsIntoTracker(uint8_t payload_type);
161 159
162 Clock* const clock_; 160 Clock* const clock_;
163 // Ownership of this object lies with VideoReceiveStream, which owns |this|. 161 // Ownership of this object lies with VideoReceiveStream, which owns |this|.
164 const VideoReceiveStream::Config& config_; 162 const VideoReceiveStream::Config& config_;
165 vcm::VideoReceiver* const video_receiver_; 163 vcm::VideoReceiver* const video_receiver_;
166 RemoteBitrateEstimator* const remote_bitrate_estimator_;
167 PacketRouter* const packet_router_; 164 PacketRouter* const packet_router_;
168 VieRemb* const remb_; 165 VieRemb* const remb_;
169 ProcessThread* const process_thread_; 166 ProcessThread* const process_thread_;
170 167
171 RemoteNtpTimeEstimator ntp_estimator_; 168 RemoteNtpTimeEstimator ntp_estimator_;
172 RTPPayloadRegistry rtp_payload_registry_; 169 RTPPayloadRegistry rtp_payload_registry_;
173 170
174 const std::unique_ptr<RtpHeaderParser> rtp_header_parser_; 171 const std::unique_ptr<RtpHeaderParser> rtp_header_parser_;
175 const std::unique_ptr<RtpReceiver> rtp_receiver_; 172 const std::unique_ptr<RtpReceiver> rtp_receiver_;
176 const std::unique_ptr<ReceiveStatistics> rtp_receive_statistics_; 173 const std::unique_ptr<ReceiveStatistics> rtp_receive_statistics_;
(...skipping 22 matching lines...) Expand all
199 // TODO(johan): Remove pt_codec_params_ once 196 // TODO(johan): Remove pt_codec_params_ once
200 // https://bugs.chromium.org/p/webrtc/issues/detail?id=6883 is resolved. 197 // https://bugs.chromium.org/p/webrtc/issues/detail?id=6883 is resolved.
201 // Maps a payload type to a map of out-of-band supplied codec parameters. 198 // Maps a payload type to a map of out-of-band supplied codec parameters.
202 std::map<uint8_t, std::map<std::string, std::string>> pt_codec_params_; 199 std::map<uint8_t, std::map<std::string, std::string>> pt_codec_params_;
203 int16_t last_payload_type_ = -1; 200 int16_t last_payload_type_ = -1;
204 }; 201 };
205 202
206 } // namespace webrtc 203 } // namespace webrtc
207 204
208 #endif // WEBRTC_VIDEO_RTP_STREAM_RECEIVER_H_ 205 #endif // WEBRTC_VIDEO_RTP_STREAM_RECEIVER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698