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

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

Issue 2630333002: Drop frames until specified bitrate is achieved. (Closed)
Patch Set: keep initial start bitrate at 0 Created 3 years, 11 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 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 virtual void OnReceivedRPSI(uint64_t picture_id); 110 virtual void OnReceivedRPSI(uint64_t picture_id);
111 111
112 void OnBitrateUpdated(uint32_t bitrate_bps, 112 void OnBitrateUpdated(uint32_t bitrate_bps,
113 uint8_t fraction_lost, 113 uint8_t fraction_lost,
114 int64_t round_trip_time_ms); 114 int64_t round_trip_time_ms);
115 115
116 protected: 116 protected:
117 // Used for testing. For example the |ScalingObserverInterface| methods must 117 // Used for testing. For example the |ScalingObserverInterface| methods must
118 // be called on |encoder_queue_|. 118 // be called on |encoder_queue_|.
119 rtc::TaskQueue* encoder_queue() { return &encoder_queue_; } 119 rtc::TaskQueue* encoder_queue() { return &encoder_queue_; }
120 bool initial_rampup_ = false;
sprang_webrtc 2017/01/16 13:45:23 Please initialize in ctor instead.
kthelgason 2017/01/16 14:08:45 Done.
120 121
121 // webrtc::ScalingObserverInterface implementation. 122 // webrtc::ScalingObserverInterface implementation.
122 // These methods are protected for easier testing. 123 // These methods are protected for easier testing.
123 void ScaleUp(ScaleReason reason) override; 124 void ScaleUp(ScaleReason reason) override;
124 void ScaleDown(ScaleReason reason) override; 125 void ScaleDown(ScaleReason reason) override;
125 126
126 private: 127 private:
127 class ConfigureEncoderTask; 128 class ConfigureEncoderTask;
128 class EncodeTask; 129 class EncodeTask;
129 class VideoSourceProxy; 130 class VideoSourceProxy;
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 // All public methods are proxied to |encoder_queue_|. It must must be 240 // All public methods are proxied to |encoder_queue_|. It must must be
240 // destroyed first to make sure no tasks are run that use other members. 241 // destroyed first to make sure no tasks are run that use other members.
241 rtc::TaskQueue encoder_queue_; 242 rtc::TaskQueue encoder_queue_;
242 243
243 RTC_DISALLOW_COPY_AND_ASSIGN(ViEEncoder); 244 RTC_DISALLOW_COPY_AND_ASSIGN(ViEEncoder);
244 }; 245 };
245 246
246 } // namespace webrtc 247 } // namespace webrtc
247 248
248 #endif // WEBRTC_VIDEO_VIE_ENCODER_H_ 249 #endif // WEBRTC_VIDEO_VIE_ENCODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698