Index: webrtc/media/engine/webrtcmediaengine.cc |
diff --git a/webrtc/media/engine/webrtcmediaengine.cc b/webrtc/media/engine/webrtcmediaengine.cc |
index 51a110b88b645aa2678991a9abede312f34463b7..1531be36b5dc1b1c39133be3362dbc82bcc620be 100644 |
--- a/webrtc/media/engine/webrtcmediaengine.cc |
+++ b/webrtc/media/engine/webrtcmediaengine.cc |
@@ -168,4 +168,30 @@ std::vector<webrtc::RtpExtension> FilterRtpExtensions( |
return result; |
} |
+ |
+webrtc::Call::Config::BitrateConfig GetBitrateConfigForCodec( |
+ const Codec& codec) { |
+ webrtc::Call::Config::BitrateConfig config; |
+ int bitrate_kbps = 0; |
+ if (codec.GetParam(kCodecParamMinBitrate, &bitrate_kbps) && |
+ bitrate_kbps > 0) { |
+ config.min_bitrate_bps = bitrate_kbps * 1000; |
+ } else { |
+ config.min_bitrate_bps = 0; |
+ } |
+ if (codec.GetParam(kCodecParamStartBitrate, &bitrate_kbps) && |
+ bitrate_kbps > 0) { |
+ config.start_bitrate_bps = bitrate_kbps * 1000; |
+ } else { |
+ // Do not reconfigure start bitrate unless it's specified and positive. |
+ config.start_bitrate_bps = -1; |
+ } |
+ if (codec.GetParam(kCodecParamMaxBitrate, &bitrate_kbps) && |
+ bitrate_kbps > 0) { |
+ config.max_bitrate_bps = bitrate_kbps * 1000; |
+ } else { |
+ config.max_bitrate_bps = -1; |
+ } |
+ return config; |
+} |
} // namespace cricket |