From ef1a76044663d1a62d14dea6ad2dd573413950ed Mon Sep 17 00:00:00 2001 From: "marpan@webrtc.org" Date: Wed, 9 Jan 2013 22:13:19 +0000 Subject: [PATCH] Rounding error fix in media_opt_util. Review URL: https://webrtc-codereview.appspot.com/1013006 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3351 4adac7df-926f-26a2-2b94-8c16560cd09d --- webrtc/modules/video_coding/main/source/media_opt_util.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/webrtc/modules/video_coding/main/source/media_opt_util.cc b/webrtc/modules/video_coding/main/source/media_opt_util.cc index a105827288..7d36489469 100644 --- a/webrtc/modules/video_coding/main/source/media_opt_util.cc +++ b/webrtc/modules/video_coding/main/source/media_opt_util.cc @@ -309,8 +309,10 @@ VCMFecMethod::AvgRecoveryFEC(const VCMProtectionParameters* parameters) const const float protectionFactor = static_cast(_protectionFactorD) / 255.0; + // Round down for estimated #FEC packets/frame, to keep + // |fecPacketsPerFrame| <= |sourcePacketsPerFrame|. WebRtc_UWord8 fecPacketsPerFrame = static_cast - (0.5 + protectionFactor * avgTotPackets); + (protectionFactor * avgTotPackets); WebRtc_UWord8 sourcePacketsPerFrame = avgTotPackets - fecPacketsPerFrame;