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

Side by Side Diff: webrtc/api/peerconnectioninterface.h

Issue 2996643002: BWE allocation strategy
Patch Set: Comments handling Created 3 years, 3 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
« no previous file with comments | « no previous file | webrtc/api/peerconnectionproxy.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright 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 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 #include "webrtc/api/rtpreceiverinterface.h" 82 #include "webrtc/api/rtpreceiverinterface.h"
83 #include "webrtc/api/rtpsenderinterface.h" 83 #include "webrtc/api/rtpsenderinterface.h"
84 #include "webrtc/api/stats/rtcstatscollectorcallback.h" 84 #include "webrtc/api/stats/rtcstatscollectorcallback.h"
85 #include "webrtc/api/statstypes.h" 85 #include "webrtc/api/statstypes.h"
86 #include "webrtc/api/umametrics.h" 86 #include "webrtc/api/umametrics.h"
87 #include "webrtc/call/callfactoryinterface.h" 87 #include "webrtc/call/callfactoryinterface.h"
88 #include "webrtc/logging/rtc_event_log/rtc_event_log_factory_interface.h" 88 #include "webrtc/logging/rtc_event_log/rtc_event_log_factory_interface.h"
89 #include "webrtc/media/base/mediachannel.h" 89 #include "webrtc/media/base/mediachannel.h"
90 #include "webrtc/media/base/videocapturer.h" 90 #include "webrtc/media/base/videocapturer.h"
91 #include "webrtc/p2p/base/portallocator.h" 91 #include "webrtc/p2p/base/portallocator.h"
92 #include "webrtc/rtc_base/bitrateallocationstrategy.h"
92 #include "webrtc/rtc_base/fileutils.h" 93 #include "webrtc/rtc_base/fileutils.h"
93 #include "webrtc/rtc_base/network.h" 94 #include "webrtc/rtc_base/network.h"
94 #include "webrtc/rtc_base/rtccertificate.h" 95 #include "webrtc/rtc_base/rtccertificate.h"
95 #include "webrtc/rtc_base/rtccertificategenerator.h" 96 #include "webrtc/rtc_base/rtccertificategenerator.h"
96 #include "webrtc/rtc_base/socketaddress.h" 97 #include "webrtc/rtc_base/socketaddress.h"
97 #include "webrtc/rtc_base/sslstreamadapter.h" 98 #include "webrtc/rtc_base/sslstreamadapter.h"
98 99
99 namespace rtc { 100 namespace rtc {
100 class SSLIdentity; 101 class SSLIdentity;
101 class Thread; 102 class Thread;
(...skipping 662 matching lines...) Expand 10 before | Expand all | Expand 10 after
764 }; 765 };
765 766
766 // SetBitrate limits the bandwidth allocated for all RTP streams sent by 767 // SetBitrate limits the bandwidth allocated for all RTP streams sent by
767 // this PeerConnection. Other limitations might affect these limits and 768 // this PeerConnection. Other limitations might affect these limits and
768 // are respected (for example "b=AS" in SDP). 769 // are respected (for example "b=AS" in SDP).
769 // 770 //
770 // Setting |current_bitrate_bps| will reset the current bitrate estimate 771 // Setting |current_bitrate_bps| will reset the current bitrate estimate
771 // to the provided value. 772 // to the provided value.
772 virtual RTCError SetBitrate(const BitrateParameters& bitrate) = 0; 773 virtual RTCError SetBitrate(const BitrateParameters& bitrate) = 0;
773 774
775 // SetBitrateAllocationStrategy sets current strategy. If not set default
776 // WebRTC allocator will be used. May be changed during an active session.
777 // Should be set to null before the strategy is destroyed. The strategy is
778 // owned by application and it is responsible for keeping it alive as long as
779 // any of its peerconnections are using it.
780 virtual RTCError SetBitrateAllocationStrategy(
781 rtc::BitrateAllocationStrategy* bitrate_allocation_strategy) {
782 return RTCError(RTCErrorType::UNSUPPORTED_OPERATION);
783 }
784
774 // Returns the current SignalingState. 785 // Returns the current SignalingState.
775 virtual SignalingState signaling_state() = 0; 786 virtual SignalingState signaling_state() = 0;
776 virtual IceConnectionState ice_connection_state() = 0; 787 virtual IceConnectionState ice_connection_state() = 0;
777 virtual IceGatheringState ice_gathering_state() = 0; 788 virtual IceGatheringState ice_gathering_state() = 0;
778 789
779 // Starts RtcEventLog using existing file. Takes ownership of |file| and 790 // Starts RtcEventLog using existing file. Takes ownership of |file| and
780 // passes it on to Call, which will take the ownership. If the 791 // passes it on to Call, which will take the ownership. If the
781 // operation fails the file will be closed. The logging will stop 792 // operation fails the file will be closed. The logging will stop
782 // automatically after 10 minutes have passed, or when the StopRtcEventLog 793 // automatically after 10 minutes have passed, or when the StopRtcEventLog
783 // function is called. 794 // function is called.
(...skipping 428 matching lines...) Expand 10 before | Expand all | Expand 10 after
1212 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, 1223 cricket::WebRtcVideoEncoderFactory* video_encoder_factory,
1213 cricket::WebRtcVideoDecoderFactory* video_decoder_factory, 1224 cricket::WebRtcVideoDecoderFactory* video_decoder_factory,
1214 rtc::scoped_refptr<AudioMixer> audio_mixer, 1225 rtc::scoped_refptr<AudioMixer> audio_mixer,
1215 std::unique_ptr<cricket::MediaEngineInterface> media_engine, 1226 std::unique_ptr<cricket::MediaEngineInterface> media_engine,
1216 std::unique_ptr<CallFactoryInterface> call_factory, 1227 std::unique_ptr<CallFactoryInterface> call_factory,
1217 std::unique_ptr<RtcEventLogFactoryInterface> event_log_factory); 1228 std::unique_ptr<RtcEventLogFactoryInterface> event_log_factory);
1218 1229
1219 } // namespace webrtc 1230 } // namespace webrtc
1220 1231
1221 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_ 1232 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/api/peerconnectionproxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698