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 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 class VCMJitterEstimator; | 42 class VCMJitterEstimator; |
43 | 43 |
44 namespace internal { | 44 namespace internal { |
45 | 45 |
46 class VideoReceiveStream : public webrtc::VideoReceiveStream, | 46 class VideoReceiveStream : public webrtc::VideoReceiveStream, |
47 public rtc::VideoSinkInterface<VideoFrame>, | 47 public rtc::VideoSinkInterface<VideoFrame>, |
48 public EncodedImageCallback, | 48 public EncodedImageCallback, |
49 public NackSender, | 49 public NackSender, |
50 public KeyFrameRequestSender, | 50 public KeyFrameRequestSender, |
51 public video_coding::OnCompleteFrameCallback, | 51 public video_coding::OnCompleteFrameCallback, |
52 public Syncable { | 52 public Syncable, |
| 53 public CallStatsObserver { |
53 public: | 54 public: |
54 VideoReceiveStream(RtpStreamReceiverControllerInterface* receiver_controller, | 55 VideoReceiveStream(RtpStreamReceiverControllerInterface* receiver_controller, |
55 int num_cpu_cores, | 56 int num_cpu_cores, |
56 PacketRouter* packet_router, | 57 PacketRouter* packet_router, |
57 VideoReceiveStream::Config config, | 58 VideoReceiveStream::Config config, |
58 ProcessThread* process_thread, | 59 ProcessThread* process_thread, |
59 CallStats* call_stats); | 60 CallStats* call_stats); |
60 ~VideoReceiveStream() override; | 61 ~VideoReceiveStream() override; |
61 | 62 |
62 const Config& config() const { return config_; } | 63 const Config& config() const { return config_; } |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 // Implements NackSender. | 95 // Implements NackSender. |
95 void SendNack(const std::vector<uint16_t>& sequence_numbers) override; | 96 void SendNack(const std::vector<uint16_t>& sequence_numbers) override; |
96 | 97 |
97 // Implements KeyFrameRequestSender. | 98 // Implements KeyFrameRequestSender. |
98 void RequestKeyFrame() override; | 99 void RequestKeyFrame() override; |
99 | 100 |
100 // Implements video_coding::OnCompleteFrameCallback. | 101 // Implements video_coding::OnCompleteFrameCallback. |
101 void OnCompleteFrame( | 102 void OnCompleteFrame( |
102 std::unique_ptr<video_coding::FrameObject> frame) override; | 103 std::unique_ptr<video_coding::FrameObject> frame) override; |
103 | 104 |
| 105 // Implements CallStatsObserver::OnRttUpdate |
| 106 void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override; |
| 107 |
104 // Implements Syncable. | 108 // Implements Syncable. |
105 int id() const override; | 109 int id() const override; |
106 rtc::Optional<Syncable::Info> GetInfo() const override; | 110 rtc::Optional<Syncable::Info> GetInfo() const override; |
107 uint32_t GetPlayoutTimestamp() const override; | 111 uint32_t GetPlayoutTimestamp() const override; |
108 void SetMinimumPlayoutDelay(int delay_ms) override; | 112 void SetMinimumPlayoutDelay(int delay_ms) override; |
109 | 113 |
110 private: | 114 private: |
111 static void DecodeThreadFunction(void* ptr); | 115 static void DecodeThreadFunction(void* ptr); |
112 bool Decode(); | 116 bool Decode(); |
113 | 117 |
(...skipping 25 matching lines...) Expand all Loading... |
139 std::unique_ptr<VCMJitterEstimator> jitter_estimator_; | 143 std::unique_ptr<VCMJitterEstimator> jitter_estimator_; |
140 std::unique_ptr<video_coding::FrameBuffer> frame_buffer_; | 144 std::unique_ptr<video_coding::FrameBuffer> frame_buffer_; |
141 | 145 |
142 std::unique_ptr<RtpStreamReceiverInterface> media_receiver_; | 146 std::unique_ptr<RtpStreamReceiverInterface> media_receiver_; |
143 std::unique_ptr<RtpStreamReceiverInterface> rtx_receiver_; | 147 std::unique_ptr<RtpStreamReceiverInterface> rtx_receiver_; |
144 }; | 148 }; |
145 } // namespace internal | 149 } // namespace internal |
146 } // namespace webrtc | 150 } // namespace webrtc |
147 | 151 |
148 #endif // WEBRTC_VIDEO_VIDEO_RECEIVE_STREAM_H_ | 152 #endif // WEBRTC_VIDEO_VIDEO_RECEIVE_STREAM_H_ |
OLD | NEW |