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

Unified Diff: webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc

Issue 2441613002: Add FlexfecSender. (Closed)
Patch Set: Rebase. Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/ulpfec_generator.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc
diff --git a/webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc b/webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc
index 3c71c6383506c2870b8d9b73414ef8648ef8e2e5..c9de401d7103d15f1cd06454e7728bdbe12b0586 100644
--- a/webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc
+++ b/webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc
@@ -94,7 +94,10 @@ size_t RedPacket::length() const {
}
UlpfecGenerator::UlpfecGenerator()
- : fec_(ForwardErrorCorrection::CreateUlpfec()),
+ : UlpfecGenerator(ForwardErrorCorrection::CreateUlpfec()) {}
+
+UlpfecGenerator::UlpfecGenerator(std::unique_ptr<ForwardErrorCorrection> fec)
+ : fec_(std::move(fec)),
num_protected_frames_(0),
min_num_media_packets_(1) {
memset(&params_, 0, sizeof(params_));
@@ -140,7 +143,7 @@ int UlpfecGenerator::AddRtpPacketAndGenerateFec(const uint8_t* data_buffer,
bool complete_frame = false;
const bool marker_bit = (data_buffer[1] & kRtpMarkerBitMask) ? true : false;
if (media_packets_.size() < kUlpfecMaxMediaPackets) {
- // Generic FEC can only protect up to |kUlpfecMaxMediaPackets| packets.
+ // Our packet masks can only protect up to |kUlpfecMaxMediaPackets| packets.
std::unique_ptr<ForwardErrorCorrection::Packet> packet(
new ForwardErrorCorrection::Packet());
packet->length = payload_length + rtp_header_length;
« no previous file with comments | « webrtc/modules/rtp_rtcp/source/ulpfec_generator.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698