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

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

Issue 1663413003: Clean up of CongestionController. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase. Created 4 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) 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 16 matching lines...) Expand all
27 27
28 namespace webrtc { 28 namespace webrtc {
29 29
30 class BitrateAllocator; 30 class BitrateAllocator;
31 class CallStats; 31 class CallStats;
32 class CongestionController; 32 class CongestionController;
33 class EncoderStateFeedback; 33 class EncoderStateFeedback;
34 class ProcessThread; 34 class ProcessThread;
35 class ViEChannel; 35 class ViEChannel;
36 class ViEEncoder; 36 class ViEEncoder;
37 class VieRemb;
37 38
38 namespace internal { 39 namespace internal {
39 40
40 class VideoSendStream : public webrtc::VideoSendStream, 41 class VideoSendStream : public webrtc::VideoSendStream,
41 public webrtc::CpuOveruseObserver { 42 public webrtc::CpuOveruseObserver {
42 public: 43 public:
43 VideoSendStream(int num_cpu_cores, 44 VideoSendStream(int num_cpu_cores,
44 ProcessThread* module_process_thread, 45 ProcessThread* module_process_thread,
45 CallStats* call_stats, 46 CallStats* call_stats,
46 CongestionController* congestion_controller, 47 CongestionController* congestion_controller,
48 VieRemb* remb,
47 BitrateAllocator* bitrate_allocator, 49 BitrateAllocator* bitrate_allocator,
48 const VideoSendStream::Config& config, 50 const VideoSendStream::Config& config,
49 const VideoEncoderConfig& encoder_config, 51 const VideoEncoderConfig& encoder_config,
50 const std::map<uint32_t, RtpState>& suspended_ssrcs); 52 const std::map<uint32_t, RtpState>& suspended_ssrcs);
51 53
52 ~VideoSendStream() override; 54 ~VideoSendStream() override;
53 55
54 // webrtc::SendStream implementation. 56 // webrtc::SendStream implementation.
55 void Start() override; 57 void Start() override;
56 void Stop() override; 58 void Stop() override;
(...skipping 22 matching lines...) Expand all
79 SendStatisticsProxy stats_proxy_; 81 SendStatisticsProxy stats_proxy_;
80 TransportAdapter transport_adapter_; 82 TransportAdapter transport_adapter_;
81 EncodedFrameCallbackAdapter encoded_frame_proxy_; 83 EncodedFrameCallbackAdapter encoded_frame_proxy_;
82 const VideoSendStream::Config config_; 84 const VideoSendStream::Config config_;
83 VideoEncoderConfig encoder_config_; 85 VideoEncoderConfig encoder_config_;
84 std::map<uint32_t, RtpState> suspended_ssrcs_; 86 std::map<uint32_t, RtpState> suspended_ssrcs_;
85 87
86 ProcessThread* const module_process_thread_; 88 ProcessThread* const module_process_thread_;
87 CallStats* const call_stats_; 89 CallStats* const call_stats_;
88 CongestionController* const congestion_controller_; 90 CongestionController* const congestion_controller_;
91 VieRemb* const remb_;
89 92
90 OveruseFrameDetector overuse_detector_; 93 OveruseFrameDetector overuse_detector_;
91 rtc::scoped_ptr<VideoCaptureInput> input_; 94 rtc::scoped_ptr<VideoCaptureInput> input_;
92 PayloadRouter payload_router_; 95 PayloadRouter payload_router_;
93 rtc::scoped_ptr<ViEEncoder> vie_encoder_; 96 rtc::scoped_ptr<ViEEncoder> vie_encoder_;
94 rtc::scoped_ptr<ViEChannel> vie_channel_; 97 rtc::scoped_ptr<ViEChannel> vie_channel_;
95 // TODO(pbos): Make proper const. 98 // TODO(pbos): Make proper const.
96 // const after construction. 99 // const after construction.
97 VideoCodingModule* vcm_; 100 VideoCodingModule* vcm_;
98 rtc::scoped_ptr<EncoderStateFeedback> encoder_feedback_; 101 rtc::scoped_ptr<EncoderStateFeedback> encoder_feedback_;
99 102
100 // Used as a workaround to indicate that we should be using the configured 103 // Used as a workaround to indicate that we should be using the configured
101 // start bitrate initially, instead of the one reported by VideoEngine (which 104 // start bitrate initially, instead of the one reported by VideoEngine (which
102 // defaults to too high). 105 // defaults to too high).
103 bool use_config_bitrate_; 106 bool use_config_bitrate_;
104 }; 107 };
105 } // namespace internal 108 } // namespace internal
106 } // namespace webrtc 109 } // namespace webrtc
107 110
108 #endif // WEBRTC_VIDEO_VIDEO_SEND_STREAM_H_ 111 #endif // WEBRTC_VIDEO_VIDEO_SEND_STREAM_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698