Bitrate bugfixes

Review URL: https://webrtc-codereview.appspot.com/609005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2313 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
pwestin@webrtc.org 2012-05-29 09:28:43 +00:00
parent 5abab0b1b5
commit 1eef9c16ff
2 changed files with 8 additions and 6 deletions

View File

@ -1628,13 +1628,15 @@ void ModuleRtpRtcpImpl::SetTargetSendBitrate(const uint32_t bitrate) {
for (int i = 0; it != _childModules.end() &&
i < _sendVideoCodec.numberOfSimulcastStreams; ++it, ++i) {
RTPSender& rtpSender = (*it)->_rtpSender;
if (_sendVideoCodec.simulcastStream[i].maxBitrate > bitrate_remainder) {
rtpSender.SetTargetSendBitrate(
_sendVideoCodec.simulcastStream[i].maxBitrate);
bitrate_remainder -= _sendVideoCodec.simulcastStream[i].maxBitrate;
} else {
if (_sendVideoCodec.simulcastStream[i].maxBitrate * 1000 >
bitrate_remainder) {
rtpSender.SetTargetSendBitrate(bitrate_remainder);
bitrate_remainder = 0;
} else {
rtpSender.SetTargetSendBitrate(
_sendVideoCodec.simulcastStream[i].maxBitrate * 1000);
bitrate_remainder -=
_sendVideoCodec.simulcastStream[i].maxBitrate * 1000;
}
}
} else {

View File

@ -514,7 +514,7 @@ RTPSender::SendOutgoingData(const FrameType frameType,
bytes = (bitrate_diff / 8);
// Cap at 200 ms of target send data.
int bytes_cap = _targetSendBitrate * 25; // 1000 / 8 / 5
if (bytes_cap > bytes) {
if (bytes > bytes_cap) {
bytes = bytes_cap;
}
}