Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(367)

Side by Side Diff: webrtc/modules/rtp_rtcp/source/forward_error_correction.h

Issue 2267393002: Generalize FEC unit tests and rename GenerateFec. (pt. 3) (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@header_reader_writer-pt2-producer_fec_mini_fixes
Patch Set: Rebase after gyp deprecation. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 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 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 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 // Input: fec_mask_type The type of packet mask used in the FEC. 140 // Input: fec_mask_type The type of packet mask used in the FEC.
141 // Random or bursty type may be selected. The 141 // Random or bursty type may be selected. The
142 // bursty type is only defined up to 12 media 142 // bursty type is only defined up to 12 media
143 // packets. If the number of media packets is 143 // packets. If the number of media packets is
144 // above 12, the packet masks from the random 144 // above 12, the packet masks from the random
145 // table will be selected. 145 // table will be selected.
146 // Output: fec_packets List of pointers to generated FEC packets, 146 // Output: fec_packets List of pointers to generated FEC packets,
147 // of type Packet. Must be empty on entry. 147 // of type Packet. Must be empty on entry.
148 // The memory available through the list will 148 // The memory available through the list will
149 // be valid until the next call to 149 // be valid until the next call to
150 // GenerateFec(). 150 // EncodeFec().
151 // 151 //
152 // Returns 0 on success, -1 on failure. 152 // Returns 0 on success, -1 on failure.
153 // 153 //
154 int GenerateFec(const PacketList& media_packets, 154 int EncodeFec(const PacketList& media_packets,
155 uint8_t protection_factor, int num_important_packets, 155 uint8_t protection_factor,
156 bool use_unequal_protection, FecMaskType fec_mask_type, 156 int num_important_packets,
157 std::list<Packet*>* fec_packets); 157 bool use_unequal_protection,
158 FecMaskType fec_mask_type,
159 std::list<Packet*>* fec_packets);
158 160
159 // 161 //
160 // Decodes a list of received media and FEC packets. It will parse the 162 // Decodes a list of received media and FEC packets. It will parse the
161 // |received_packets|, storing FEC packets internally, and move 163 // |received_packets|, storing FEC packets internally, and move
162 // media packets to |recovered_packets|. The recovered list will be 164 // media packets to |recovered_packets|. The recovered list will be
163 // sorted by ascending sequence number and have duplicates removed. 165 // sorted by ascending sequence number and have duplicates removed.
164 // The function should be called as new packets arrive, and 166 // The function should be called as new packets arrive, and
165 // |recovered_packets| will be progressively assembled with each call. 167 // |recovered_packets| will be progressively assembled with each call.
166 // When the function returns, |received_packets| will be empty. 168 // When the function returns, |received_packets| will be empty.
167 // 169 //
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 ReceivedFecPacketList received_fec_packets_; 303 ReceivedFecPacketList received_fec_packets_;
302 304
303 // Arrays used to avoid dynamically allocating memory when generating 305 // Arrays used to avoid dynamically allocating memory when generating
304 // the packet masks in the ULPFEC headers. 306 // the packet masks in the ULPFEC headers.
305 // (There are never more than |kMaxMediaPackets| FEC packets generated.) 307 // (There are never more than |kMaxMediaPackets| FEC packets generated.)
306 uint8_t packet_mask_[kMaxMediaPackets * kMaskSizeLBitSet]; 308 uint8_t packet_mask_[kMaxMediaPackets * kMaskSizeLBitSet];
307 uint8_t tmp_packet_mask_[kMaxMediaPackets * kMaskSizeLBitSet]; 309 uint8_t tmp_packet_mask_[kMaxMediaPackets * kMaskSizeLBitSet];
308 }; 310 };
309 } // namespace webrtc 311 } // namespace webrtc
310 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_FORWARD_ERROR_CORRECTION_H_ 312 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_FORWARD_ERROR_CORRECTION_H_
OLDNEW
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/fec_test_helper.cc ('k') | webrtc/modules/rtp_rtcp/source/forward_error_correction.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698