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

Unified Diff: talk/media/webrtc/webrtcvideoengine2.h

Issue 1641863004: Consolidate setters into SetRecvParameters. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: dcheck Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « talk/media/base/mediachannel.h ('k') | talk/media/webrtc/webrtcvideoengine2.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: talk/media/webrtc/webrtcvideoengine2.h
diff --git a/talk/media/webrtc/webrtcvideoengine2.h b/talk/media/webrtc/webrtcvideoengine2.h
index 1525cb96df3e592138fc3a7772b2c6e92093fde1..eff1a612c82a74708e0e17a2ee86655bbf212e50 100644
--- a/talk/media/webrtc/webrtcvideoengine2.h
+++ b/talk/media/webrtc/webrtcvideoengine2.h
@@ -194,6 +194,7 @@ class WebRtcVideoChannel2 : public rtc::MessageHandler,
uint32_t GetDefaultSendChannelSsrc() { return default_send_ssrc_; }
private:
+ class WebRtcVideoReceiveStream;
struct VideoCodecSettings {
VideoCodecSettings();
@@ -213,16 +214,23 @@ class WebRtcVideoChannel2 : public rtc::MessageHandler,
rtc::Optional<VideoOptions> options;
rtc::Optional<webrtc::RtcpMode> rtcp_mode;
};
+
+ struct ChangedRecvParameters {
+ // These optionals are unset if not changed.
+ rtc::Optional<std::vector<VideoCodecSettings>> codec_settings;
+ rtc::Optional<std::vector<webrtc::RtpExtension>> rtp_header_extensions;
+ rtc::Optional<webrtc::RtcpMode> rtcp_mode;
+ };
+
bool GetChangedSendParameters(const VideoSendParameters& params,
ChangedSendParameters* changed_params) const;
+ bool GetChangedRecvParameters(const VideoRecvParameters& params,
+ ChangedRecvParameters* changed_params) const;
+
bool MuteStream(uint32_t ssrc, bool mute);
- class WebRtcVideoReceiveStream;
void SetMaxSendBandwidth(int bps);
void SetOptions(const VideoOptions& options);
- bool SetRecvCodecs(const std::vector<VideoCodec>& codecs);
- bool SetRecvRtpHeaderExtensions(
- const std::vector<RtpHeaderExtension>& extensions);
void ConfigureReceiverRtp(webrtc::VideoReceiveStream::Config* config,
const StreamParams& sp) const;
@@ -401,11 +409,7 @@ class WebRtcVideoChannel2 : public rtc::MessageHandler,
void SetFeedbackParameters(bool nack_enabled,
bool remb_enabled,
bool transport_cc_enabled);
- void SetRecvCodecs(const std::vector<VideoCodecSettings>& recv_codecs);
- void SetRtpExtensions(const std::vector<webrtc::RtpExtension>& extensions);
- // TODO(deadbeef): Move logic from SetRecvCodecs/SetRtpExtensions/etc.
- // into this method. Currently this method only sets the RTCP mode.
- void SetRecvParameters(const VideoRecvParameters& recv_params);
+ void SetRecvParameters(const ChangedRecvParameters& recv_params);
void RenderFrame(const webrtc::VideoFrame& frame,
int time_to_render_ms) override;
@@ -431,6 +435,8 @@ class WebRtcVideoChannel2 : public rtc::MessageHandler,
void RecreateWebRtcStream();
+ void ConfigureCodecs(const std::vector<VideoCodecSettings>& recv_codecs,
+ std::vector<AllocatedDecoder>* old_codecs);
AllocatedDecoder CreateOrReuseVideoDecoder(
std::vector<AllocatedDecoder>* old_decoder,
const VideoCodec& codec);
« no previous file with comments | « talk/media/base/mediachannel.h ('k') | talk/media/webrtc/webrtcvideoengine2.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698