Index: media/engine/webrtcvideoengine.h |
diff --git a/media/engine/webrtcvideoengine.h b/media/engine/webrtcvideoengine.h |
index 23d9b480167014c480ab4eae7a9d75a4caa97a54..2406542b37794dae2ffc00944c818671cc121bd5 100644 |
--- a/media/engine/webrtcvideoengine.h |
+++ b/media/engine/webrtcvideoengine.h |
@@ -121,8 +121,8 @@ class WebRtcVideoEngine { |
RtpCapabilities GetCapabilities() const; |
private: |
- const std::unique_ptr<DecoderFactoryAdapter> decoder_factory_; |
- const std::unique_ptr<EncoderFactoryAdapter> encoder_factory_; |
+ std::unique_ptr<DecoderFactoryAdapter> decoder_factory_; |
+ std::unique_ptr<EncoderFactoryAdapter> encoder_factory_; |
}; |
class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
@@ -130,8 +130,8 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
WebRtcVideoChannel(webrtc::Call* call, |
const MediaConfig& config, |
const VideoOptions& options, |
- const EncoderFactoryAdapter* encoder_factory, |
- const DecoderFactoryAdapter* decoder_factory); |
+ EncoderFactoryAdapter* encoder_factory, |
+ DecoderFactoryAdapter* decoder_factory); |
~WebRtcVideoChannel() override; |
// VideoMediaChannel implementation |
@@ -205,6 +205,7 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
const VideoCodecSettings& b); |
VideoCodec codec; |
+ rtc::Optional<VideoCodec> stereo_codec; |
webrtc::UlpfecConfig ulpfec; |
int flexfec_payload_type; |
int rtx_payload_type; |
@@ -259,7 +260,7 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
const StreamParams& sp, |
webrtc::VideoSendStream::Config config, |
const VideoOptions& options, |
- const EncoderFactoryAdapter* encoder_factory, |
+ EncoderFactoryAdapter* encoder_factory, |
bool enable_cpu_overuse_detection, |
int max_bitrate_bps, |
const rtc::Optional<VideoCodecSettings>& codec_settings, |
@@ -337,8 +338,7 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
const bool enable_cpu_overuse_detection_; |
rtc::VideoSourceInterface<webrtc::VideoFrame>* source_ |
RTC_ACCESS_ON(&thread_checker_); |
- const EncoderFactoryAdapter* const encoder_factory_ |
- RTC_ACCESS_ON(&thread_checker_); |
+ EncoderFactoryAdapter* encoder_factory_ RTC_ACCESS_ON(&thread_checker_); |
webrtc::VideoSendStream* stream_ RTC_ACCESS_ON(&thread_checker_); |
rtc::VideoSinkInterface<webrtc::VideoFrame>* encoder_sink_ |
@@ -369,7 +369,7 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
webrtc::Call* call, |
const StreamParams& sp, |
webrtc::VideoReceiveStream::Config config, |
- const DecoderFactoryAdapter* decoder_factory, |
+ DecoderFactoryAdapter* decoder_factory, |
bool default_stream, |
const std::vector<VideoCodecSettings>& recv_codecs, |
const webrtc::FlexfecReceiveStream::Config& flexfec_config); |
@@ -430,7 +430,7 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
webrtc::FlexfecReceiveStream::Config flexfec_config_; |
webrtc::FlexfecReceiveStream* flexfec_stream_; |
- const DecoderFactoryAdapter* decoder_factory_; |
+ DecoderFactoryAdapter* decoder_factory_; |
DecoderMap allocated_decoders_; |
rtc::CriticalSection sink_lock_; |
@@ -460,6 +460,9 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
// codec that is supported locally will be selected. |
rtc::Optional<VideoCodecSettings> SelectSendVideoCodec( |
const std::vector<VideoCodecSettings>& remote_mapped_codecs) const; |
+ rtc::Optional<WebRtcVideoChannel::VideoCodecSettings> |
+ SelectStereoAssociatedVideoCodec( |
+ const std::vector<VideoCodecSettings>& remote_mapped_codecs) const; |
static bool NonFlexfecReceiveCodecsHaveChanged( |
std::vector<VideoCodecSettings> before, |
@@ -494,8 +497,8 @@ class WebRtcVideoChannel : public VideoMediaChannel, public webrtc::Transport { |
rtc::Optional<VideoCodecSettings> send_codec_; |
rtc::Optional<std::vector<webrtc::RtpExtension>> send_rtp_extensions_; |
- const EncoderFactoryAdapter* const encoder_factory_; |
- const DecoderFactoryAdapter* const decoder_factory_; |
+ EncoderFactoryAdapter* encoder_factory_; |
+ DecoderFactoryAdapter* decoder_factory_; |
std::vector<VideoCodecSettings> recv_codecs_; |
std::vector<webrtc::RtpExtension> recv_rtp_extensions_; |
// See reason for keeping track of the FlexFEC payload type separately in |