| /* |
| * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
| * |
| * Use of this source code is governed by a BSD-style license |
| * that can be found in the LICENSE file in the root of the source |
| * tree. An additional intellectual property rights grant can be found |
| * in the file PATENTS. All contributing project authors may |
| * be found in the AUTHORS file in the root of the source tree. |
| */ |
| #ifndef WEBRTC_MODULES_RTP_RTCP_TEST_TESTFEC_AVERAGE_RESIDUAL_LOSS_XOR_CODES_H_ |
| #define WEBRTC_MODULES_RTP_RTCP_TEST_TESTFEC_AVERAGE_RESIDUAL_LOSS_XOR_CODES_H_ |
| |
| namespace webrtc { |
| |
| // Maximum number of media packets allowed in this test. The burst mask types |
| // are currently defined up to (kMaxMediaPacketsTest, kMaxMediaPacketsTest). |
| const int kMaxMediaPacketsTest = 12; |
| |
| // Maximum number of FEC codes considered in this test. |
| const int kNumberCodes = kMaxMediaPacketsTest * (kMaxMediaPacketsTest + 1) / 2; |
| |
| // For the random mask type: reference level for the maximum average residual |
| // loss expected for each code size up to: |
| // (kMaxMediaPacketsTest, kMaxMediaPacketsTest). |
| const float kMaxResidualLossRandomMask[kNumberCodes] = { |
| 0.009463f, |
| 0.022436f, |
| 0.007376f, |
| 0.033895f, |
| 0.012423f, |
| 0.004644f, |
| 0.043438f, |
| 0.019937f, |
| 0.008820f, |
| 0.003438f, |
| 0.051282f, |
| 0.025795f, |
| 0.012872f, |
| 0.006458f, |
| 0.003195f, |
| 0.057728f, |
| 0.032146f, |
| 0.016708f, |
| 0.009242f, |
| 0.005054f, |
| 0.003078f, |
| 0.063050f, |
| 0.037261f, |
| 0.021767f, |
| 0.012447f, |
| 0.007099f, |
| 0.003826f, |
| 0.002504f, |
| 0.067476f, |
| 0.042348f, |
| 0.026169f, |
| 0.015695f, |
| 0.009478f, |
| 0.005887f, |
| 0.003568f, |
| 0.001689f, |
| 0.071187f, |
| 0.046575f, |
| 0.031697f, |
| 0.019797f, |
| 0.012433f, |
| 0.007027f, |
| 0.004845f, |
| 0.002777f, |
| 0.001753f, |
| 0.074326f, |
| 0.050628f, |
| 0.034978f, |
| 0.021955f, |
| 0.014821f, |
| 0.009462f, |
| 0.006393f, |
| 0.004181f, |
| 0.003105f, |
| 0.001231f, |
| 0.077008f, |
| 0.054226f, |
| 0.038407f, |
| 0.026251f, |
| 0.018634f, |
| 0.011568f, |
| 0.008130f, |
| 0.004957f, |
| 0.003334f, |
| 0.002069f, |
| 0.001304f, |
| 0.079318f, |
| 0.057180f, |
| 0.041268f, |
| 0.028842f, |
| 0.020033f, |
| 0.014061f, |
| 0.009636f, |
| 0.006411f, |
| 0.004583f, |
| 0.002817f, |
| 0.001770f, |
| 0.001258f |
| }; |
| |
| // For the bursty mask type: reference level for the maximum average residual |
| // loss expected for each code size up to: |
| // (kMaxMediaPacketsTestf, kMaxMediaPacketsTest). |
| const float kMaxResidualLossBurstyMask[kNumberCodes] = { |
| 0.033236f, |
| 0.053344f, |
| 0.026616f, |
| 0.064129f, |
| 0.036589f, |
| 0.021892f, |
| 0.071055f, |
| 0.043890f, |
| 0.028009f, |
| 0.018524f, |
| 0.075968f, |
| 0.049828f, |
| 0.033288f, |
| 0.022791f, |
| 0.016088f, |
| 0.079672f, |
| 0.054586f, |
| 0.037872f, |
| 0.026679f, |
| 0.019326f, |
| 0.014293f, |
| 0.082582f, |
| 0.058719f, |
| 0.042045f, |
| 0.030504f, |
| 0.022391f, |
| 0.016894f, |
| 0.012946f, |
| 0.084935f, |
| 0.062169f, |
| 0.045620f, |
| 0.033713f, |
| 0.025570f, |
| 0.019439f, |
| 0.015121f, |
| 0.011920f, |
| 0.086881f, |
| 0.065267f, |
| 0.048721f, |
| 0.037613f, |
| 0.028278f, |
| 0.022152f, |
| 0.017314f, |
| 0.013791f, |
| 0.011130f, |
| 0.088516f, |
| 0.067911f, |
| 0.051709f, |
| 0.040819f, |
| 0.030777f, |
| 0.024547f, |
| 0.019689f, |
| 0.015877f, |
| 0.012773f, |
| 0.010516f, |
| 0.089909f, |
| 0.070332f, |
| 0.054402f, |
| 0.043210f, |
| 0.034096f, |
| 0.026625f, |
| 0.021823f, |
| 0.017648f, |
| 0.014649f, |
| 0.011982f, |
| 0.010035f, |
| 0.091109f, |
| 0.072428f, |
| 0.056775f, |
| 0.045418f, |
| 0.036679f, |
| 0.028599f, |
| 0.023693f, |
| 0.019966f, |
| 0.016603f, |
| 0.013690f, |
| 0.011359f, |
| 0.009657f |
| }; |
| |
| } // namespace webrtc |
| #endif // WEBRTC_MODULES_RTP_RTCP_TEST_TESTFEC_AVERAGE_RESIDUAL_LOSS_XOR_CODES_H_ |