| Index: webrtc/config.cc
 | 
| diff --git a/webrtc/config.cc b/webrtc/config.cc
 | 
| index d870878a631c16e29eab52077c7d34726abdfba0..3761d66cc7484ac909f4619c34269c7013d9d797 100644
 | 
| --- a/webrtc/config.cc
 | 
| +++ b/webrtc/config.cc
 | 
| @@ -12,6 +12,8 @@
 | 
|  #include <sstream>
 | 
|  #include <string>
 | 
|  
 | 
| +#include "webrtc/base/checks.h"
 | 
| +
 | 
|  namespace webrtc {
 | 
|  std::string NackConfig::ToString() const {
 | 
|    std::stringstream ss;
 | 
| @@ -113,7 +115,7 @@ std::string VideoStream::ToString() const {
 | 
|  
 | 
|  VideoEncoderConfig::VideoEncoderConfig()
 | 
|      : content_type(ContentType::kRealtimeVideo),
 | 
| -      encoder_specific_settings(NULL),
 | 
| +      encoder_specific_settings(nullptr),
 | 
|        min_transmit_bitrate_bps(0),
 | 
|        expect_encode_from_texture(false) {}
 | 
|  
 | 
| @@ -146,4 +148,59 @@ std::string VideoEncoderConfig::ToString() const {
 | 
|    return ss.str();
 | 
|  }
 | 
|  
 | 
| +void VideoEncoderConfig::EncoderSpecificSettings::FillEncoderSpecificSettings(
 | 
| +    VideoCodec* codec) const {
 | 
| +  if (codec->codecType == kVideoCodecH264) {
 | 
| +    FillVideoCodecH264(&codec->codecSpecific.H264);
 | 
| +  } else if (codec->codecType == kVideoCodecVP8) {
 | 
| +    FillVideoCodecVp8(&codec->codecSpecific.VP8);
 | 
| +  } else if (codec->codecType == kVideoCodecVP9) {
 | 
| +    FillVideoCodecVp9(&codec->codecSpecific.VP9);
 | 
| +  } else {
 | 
| +    RTC_NOTREACHED() << "Encoder specifics set/used for unknown codec type.";
 | 
| +  }
 | 
| +}
 | 
| +
 | 
| +void VideoEncoderConfig::EncoderSpecificSettings::FillVideoCodecH264(
 | 
| +    VideoCodecH264* h264_settings) const {
 | 
| +  RTC_NOTREACHED();
 | 
| +}
 | 
| +
 | 
| +void VideoEncoderConfig::EncoderSpecificSettings::FillVideoCodecVp8(
 | 
| +    VideoCodecVP8* vp8_settings) const {
 | 
| +  RTC_NOTREACHED();
 | 
| +}
 | 
| +
 | 
| +void VideoEncoderConfig::EncoderSpecificSettings::FillVideoCodecVp9(
 | 
| +    VideoCodecVP9* vp9_settings) const {
 | 
| +  RTC_NOTREACHED();
 | 
| +}
 | 
| +
 | 
| +VideoEncoderConfig::H264EncoderSpecificSettings::H264EncoderSpecificSettings(
 | 
| +    const VideoCodecH264& specifics)
 | 
| +    : specifics_(specifics) {}
 | 
| +
 | 
| +void VideoEncoderConfig::H264EncoderSpecificSettings::FillVideoCodecH264(
 | 
| +    VideoCodecH264* h264_settings) const {
 | 
| +  *h264_settings = specifics_;
 | 
| +}
 | 
| +
 | 
| +VideoEncoderConfig::Vp8EncoderSpecificSettings::Vp8EncoderSpecificSettings(
 | 
| +    const VideoCodecVP8& specifics)
 | 
| +    : specifics_(specifics) {}
 | 
| +
 | 
| +void VideoEncoderConfig::Vp8EncoderSpecificSettings::FillVideoCodecVp8(
 | 
| +    VideoCodecVP8* vp8_settings) const {
 | 
| +  *vp8_settings = specifics_;
 | 
| +}
 | 
| +
 | 
| +VideoEncoderConfig::Vp9EncoderSpecificSettings::Vp9EncoderSpecificSettings(
 | 
| +    const VideoCodecVP9& specifics)
 | 
| +    : specifics_(specifics) {}
 | 
| +
 | 
| +void VideoEncoderConfig::Vp9EncoderSpecificSettings::FillVideoCodecVp9(
 | 
| +    VideoCodecVP9* vp9_settings) const {
 | 
| +  *vp9_settings = specifics_;
 | 
| +}
 | 
| +
 | 
|  }  // namespace webrtc
 | 
| 
 |