OLD | NEW |
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 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 public VCMPacketRequestCallback, | 65 public VCMPacketRequestCallback, |
66 public video_coding::OnReceivedFrameCallback, | 66 public video_coding::OnReceivedFrameCallback, |
67 public video_coding::OnCompleteFrameCallback, | 67 public video_coding::OnCompleteFrameCallback, |
68 public CallStatsObserver { | 68 public CallStatsObserver { |
69 public: | 69 public: |
70 RtpVideoStreamReceiver( | 70 RtpVideoStreamReceiver( |
71 Transport* transport, | 71 Transport* transport, |
72 RtcpRttStats* rtt_stats, | 72 RtcpRttStats* rtt_stats, |
73 PacketRouter* packet_router, | 73 PacketRouter* packet_router, |
74 const VideoReceiveStream::Config* config, | 74 const VideoReceiveStream::Config* config, |
| 75 ReceiveStatistics* rtp_receive_statistics, |
75 ReceiveStatisticsProxy* receive_stats_proxy, | 76 ReceiveStatisticsProxy* receive_stats_proxy, |
76 ProcessThread* process_thread, | 77 ProcessThread* process_thread, |
77 NackSender* nack_sender, | 78 NackSender* nack_sender, |
78 KeyFrameRequestSender* keyframe_request_sender, | 79 KeyFrameRequestSender* keyframe_request_sender, |
79 video_coding::OnCompleteFrameCallback* complete_frame_callback, | 80 video_coding::OnCompleteFrameCallback* complete_frame_callback, |
80 VCMTiming* timing); | 81 VCMTiming* timing); |
81 ~RtpVideoStreamReceiver(); | 82 ~RtpVideoStreamReceiver(); |
82 | 83 |
83 bool AddReceiveCodec(const VideoCodec& video_codec, | 84 bool AddReceiveCodec(const VideoCodec& video_codec, |
84 const std::map<std::string, std::string>& codec_params); | 85 const std::map<std::string, std::string>& codec_params); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 // Ownership of this object lies with VideoReceiveStream, which owns |this|. | 174 // Ownership of this object lies with VideoReceiveStream, which owns |this|. |
174 const VideoReceiveStream::Config& config_; | 175 const VideoReceiveStream::Config& config_; |
175 PacketRouter* const packet_router_; | 176 PacketRouter* const packet_router_; |
176 ProcessThread* const process_thread_; | 177 ProcessThread* const process_thread_; |
177 | 178 |
178 RemoteNtpTimeEstimator ntp_estimator_; | 179 RemoteNtpTimeEstimator ntp_estimator_; |
179 RTPPayloadRegistry rtp_payload_registry_; | 180 RTPPayloadRegistry rtp_payload_registry_; |
180 | 181 |
181 const std::unique_ptr<RtpHeaderParser> rtp_header_parser_; | 182 const std::unique_ptr<RtpHeaderParser> rtp_header_parser_; |
182 const std::unique_ptr<RtpReceiver> rtp_receiver_; | 183 const std::unique_ptr<RtpReceiver> rtp_receiver_; |
183 const std::unique_ptr<ReceiveStatistics> rtp_receive_statistics_; | 184 ReceiveStatistics* const rtp_receive_statistics_; |
184 std::unique_ptr<UlpfecReceiver> ulpfec_receiver_; | 185 std::unique_ptr<UlpfecReceiver> ulpfec_receiver_; |
185 | 186 |
186 rtc::SequencedTaskChecker worker_task_checker_; | 187 rtc::SequencedTaskChecker worker_task_checker_; |
187 bool receiving_ GUARDED_BY(worker_task_checker_); | 188 bool receiving_ GUARDED_BY(worker_task_checker_); |
188 uint8_t restored_packet_[IP_PACKET_SIZE] GUARDED_BY(worker_task_checker_); | |
189 bool restored_packet_in_use_ GUARDED_BY(worker_task_checker_); | |
190 int64_t last_packet_log_ms_ GUARDED_BY(worker_task_checker_); | 189 int64_t last_packet_log_ms_ GUARDED_BY(worker_task_checker_); |
191 | 190 |
192 const std::unique_ptr<RtpRtcp> rtp_rtcp_; | 191 const std::unique_ptr<RtpRtcp> rtp_rtcp_; |
193 | 192 |
194 // Members for the new jitter buffer experiment. | 193 // Members for the new jitter buffer experiment. |
195 video_coding::OnCompleteFrameCallback* complete_frame_callback_; | 194 video_coding::OnCompleteFrameCallback* complete_frame_callback_; |
196 KeyFrameRequestSender* keyframe_request_sender_; | 195 KeyFrameRequestSender* keyframe_request_sender_; |
197 VCMTiming* timing_; | 196 VCMTiming* timing_; |
198 std::unique_ptr<NackModule> nack_module_; | 197 std::unique_ptr<NackModule> nack_module_; |
199 rtc::scoped_refptr<video_coding::PacketBuffer> packet_buffer_; | 198 rtc::scoped_refptr<video_coding::PacketBuffer> packet_buffer_; |
(...skipping 10 matching lines...) Expand all Loading... |
210 | 209 |
211 bool has_received_frame_; | 210 bool has_received_frame_; |
212 | 211 |
213 std::vector<RtpPacketSinkInterface*> secondary_sinks_ | 212 std::vector<RtpPacketSinkInterface*> secondary_sinks_ |
214 GUARDED_BY(worker_task_checker_); | 213 GUARDED_BY(worker_task_checker_); |
215 }; | 214 }; |
216 | 215 |
217 } // namespace webrtc | 216 } // namespace webrtc |
218 | 217 |
219 #endif // WEBRTC_VIDEO_RTP_VIDEO_STREAM_RECEIVER_H_ | 218 #endif // WEBRTC_VIDEO_RTP_VIDEO_STREAM_RECEIVER_H_ |
OLD | NEW |