• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #ifndef MODULES_RTP_RTCP_SOURCE_FEC_PRIVATE_TABLES_BURSTY_H_
12 #define MODULES_RTP_RTCP_SOURCE_FEC_PRIVATE_TABLES_BURSTY_H_
13 
14 // This file contains a set of packets masks for the FEC code. The masks in
15 // this table are specifically designed to favor recovery of bursty/consecutive
16 // loss network conditions. The tradeoff is worse recovery for random losses.
17 // These packet masks are currently defined to protect up to 12 media packets.
18 // They have the following property: for any packet mask defined by the
19 // parameters (k,m), where k = number of media packets, m = number of FEC
20 // packets, all "consecutive" losses of size <= m are completely recoverable.
21 // By consecutive losses we mean consecutive with respect to the sequence
22 // number ordering of the list (media and FEC) of packets. The difference
23 // between these masks (|kFecMaskBursty|) and |kFecMaskRandom| type, defined
24 // in fec_private_tables.h, is more significant for longer codes
25 // (i.e., more packets/symbols in the code, so larger (k,m), i.e.,  k > 4,
26 // m > 3).
27 
28 #include <stdint.h>
29 
30 namespace webrtc {
31 namespace fec_private_tables {
32 
33 extern const uint8_t kPacketMaskBurstyTbl[];
34 
35 }  // namespace fec_private_tables
36 }  // namespace webrtc
37 #endif  // MODULES_RTP_RTCP_SOURCE_FEC_PRIVATE_TABLES_BURSTY_H_
38