diff --git a/call/rtp_config.h b/call/rtp_config.h
index 105d284..0af48a5 100644
--- a/call/rtp_config.h
+++ b/call/rtp_config.h
@@ -31,7 +31,7 @@
 struct LntfConfig {
   std::string ToString() const;
 
-  bool enabled{false};  // TODO(bugs.webrtc.org/10662): Consume this flag.
+  bool enabled{false};
 };
 
 // Settings for NACK, see RFC 4585 for details.
diff --git a/call/rtp_video_sender.cc b/call/rtp_video_sender.cc
index bd56c33..59817fb 100644
--- a/call/rtp_video_sender.cc
+++ b/call/rtp_video_sender.cc
@@ -125,7 +125,7 @@
         configuration.clock, rtp_rtcp->RtpSender(),
         configuration.flexfec_sender, playout_delay_oracle.get(),
         frame_encryptor, crypto_options.sframe.require_frame_encryption,
-        FieldTrialBasedConfig());
+        rtp_config.lntf.enabled, FieldTrialBasedConfig());
     rtp_streams.emplace_back(std::move(playout_delay_oracle),
                              std::move(rtp_rtcp), std::move(sender_video));
   }
diff --git a/modules/rtp_rtcp/source/nack_rtx_unittest.cc b/modules/rtp_rtcp/source/nack_rtx_unittest.cc
index f8fd39a..7ace5a3 100644
--- a/modules/rtp_rtcp/source/nack_rtx_unittest.cc
+++ b/modules/rtp_rtcp/source/nack_rtx_unittest.cc
@@ -138,7 +138,7 @@
     rtp_rtcp_module_ = RtpRtcp::Create(configuration);
     rtp_sender_video_ = absl::make_unique<RTPSenderVideo>(
         &fake_clock, rtp_rtcp_module_->RtpSender(), nullptr,
-        &playout_delay_oracle_, nullptr, false, FieldTrialBasedConfig());
+        &playout_delay_oracle_, nullptr, false, false, FieldTrialBasedConfig());
     rtp_rtcp_module_->SetSSRC(kTestSsrc);
     rtp_rtcp_module_->SetRTCPStatus(RtcpMode::kCompound);
     rtp_rtcp_module_->SetStorePacketsStatus(true, 600);
diff --git a/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc b/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
index 09f8dbd..2f059c4 100644
--- a/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_rtcp_impl_unittest.cc
@@ -187,7 +187,7 @@
 
     sender_video_ = absl::make_unique<RTPSenderVideo>(
         &clock_, sender_.impl_->RtpSender(), nullptr, &playout_delay_oracle_,
-        nullptr, false, FieldTrialBasedConfig());
+        nullptr, false, false, FieldTrialBasedConfig());
 
     memset(&codec_, 0, sizeof(VideoCodec));
     codec_.plType = 100;
diff --git a/modules/rtp_rtcp/source/rtp_sender_unittest.cc b/modules/rtp_rtcp/source/rtp_sender_unittest.cc
index 3d1bed4..944ec07 100644
--- a/modules/rtp_rtcp/source/rtp_sender_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_unittest.cc
@@ -515,7 +515,7 @@
   rtp_sender_->SetSSRC(kSsrc);
   PlayoutDelayOracle playout_delay_oracle;
   RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(), nullptr,
-                                  &playout_delay_oracle, nullptr, false,
+                                  &playout_delay_oracle, nullptr, false, false,
                                   FieldTrialBasedConfig());
 
   const uint8_t kPayloadType = 127;
@@ -1098,7 +1098,7 @@
   const uint8_t payload_type = 127;
   PlayoutDelayOracle playout_delay_oracle;
   RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(), nullptr,
-                                  &playout_delay_oracle, nullptr, false,
+                                  &playout_delay_oracle, nullptr, false, false,
                                   FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(payload_type, payload_name,
                                        /*raw_payload=*/false);
@@ -1141,7 +1141,7 @@
 
   PlayoutDelayOracle playout_delay_oracle;
   RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(), nullptr,
-                                  &playout_delay_oracle, nullptr, false,
+                                  &playout_delay_oracle, nullptr, false, false,
                                   FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(payload_type, payload_name,
                                        /*raw_payload=*/true);
@@ -1180,9 +1180,9 @@
   rtp_sender_->SetStorePacketsStatus(true, 10);
 
   PlayoutDelayOracle playout_delay_oracle;
-  RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(),
-                                  &flexfec_sender, &playout_delay_oracle,
-                                  nullptr, false, FieldTrialBasedConfig());
+  RTPSenderVideo rtp_sender_video(
+      &fake_clock_, rtp_sender_.get(), &flexfec_sender, &playout_delay_oracle,
+      nullptr, false, false, FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(kMediaPayloadType, "GENERIC",
                                        /*raw_payload=*/false);
 
@@ -1257,9 +1257,9 @@
   rtp_sender_->SetStorePacketsStatus(true, 10);
 
   PlayoutDelayOracle playout_delay_oracle;
-  RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(),
-                                  &flexfec_sender, &playout_delay_oracle,
-                                  nullptr, false, FieldTrialBasedConfig());
+  RTPSenderVideo rtp_sender_video(
+      &fake_clock_, rtp_sender_.get(), &flexfec_sender, &playout_delay_oracle,
+      nullptr, false, false, FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(kMediaPayloadType, "GENERIC",
                                        /*raw_payload=*/false);
 
@@ -1359,9 +1359,9 @@
   rtp_sender_->SetSequenceNumber(kSeqNum);
 
   PlayoutDelayOracle playout_delay_oracle;
-  RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(),
-                                  &flexfec_sender, &playout_delay_oracle,
-                                  nullptr, false, FieldTrialBasedConfig());
+  RTPSenderVideo rtp_sender_video(
+      &fake_clock_, rtp_sender_.get(), &flexfec_sender, &playout_delay_oracle,
+      nullptr, false, false, FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(kMediaPayloadType, "GENERIC",
                                        /*raw_payload=*/false);
 
@@ -1490,9 +1490,9 @@
   rtp_sender_->SetSequenceNumber(kSeqNum);
 
   PlayoutDelayOracle playout_delay_oracle;
-  RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(),
-                                  &flexfec_sender, &playout_delay_oracle,
-                                  nullptr, false, FieldTrialBasedConfig());
+  RTPSenderVideo rtp_sender_video(
+      &fake_clock_, rtp_sender_.get(), &flexfec_sender, &playout_delay_oracle,
+      nullptr, false, false, FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(kMediaPayloadType, "GENERIC",
                                        /*raw_payload=*/false);
   // Parameters selected to generate a single FEC packet per media packet.
@@ -1562,7 +1562,7 @@
 
   PlayoutDelayOracle playout_delay_oracle;
   RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(), nullptr,
-                                  &playout_delay_oracle, nullptr, false,
+                                  &playout_delay_oracle, nullptr, false, false,
                                   FieldTrialBasedConfig());
   const char payload_name[] = "GENERIC";
   const uint8_t payload_type = 127;
@@ -1651,7 +1651,7 @@
   const uint8_t payload_type = 127;
   PlayoutDelayOracle playout_delay_oracle;
   RTPSenderVideo rtp_sender_video(&fake_clock_, rtp_sender_.get(), nullptr,
-                                  &playout_delay_oracle, nullptr, false,
+                                  &playout_delay_oracle, nullptr, false, false,
                                   FieldTrialBasedConfig());
   rtp_sender_video.RegisterPayloadType(payload_type, payload_name,
                                        /*raw_payload=*/false);
diff --git a/modules/rtp_rtcp/source/rtp_sender_video.cc b/modules/rtp_rtcp/source/rtp_sender_video.cc
index cd388b4..b69b0d5 100644
--- a/modules/rtp_rtcp/source/rtp_sender_video.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_video.cc
@@ -187,6 +187,7 @@
                                PlayoutDelayOracle* playout_delay_oracle,
                                FrameEncryptorInterface* frame_encryptor,
                                bool require_frame_encryption,
+                               bool need_rtp_packet_infos,
                                const WebRtcKeyValueConfig& field_trials)
     : rtp_sender_(rtp_sender),
       clock_(clock),
@@ -195,15 +196,10 @@
       last_rotation_(kVideoRotation_0),
       transmit_color_space_next_frame_(false),
       playout_delay_oracle_(playout_delay_oracle),
-      // TODO(bugs.webrtc.org/10662): Choose whether to instantiate
-      // |rtp_sequence_number_map_| according to the negotiation of the
-      // LNTF (loss notification) rtcp-fb message.
-      rtp_sequence_number_map_(
-          field_trials.Lookup("WebRTC-RtcpLossNotification").find("Enabled") !=
-                  std::string::npos
-              ? absl::make_unique<RtpSequenceNumberMap>(
-                    kRtpSequenceNumberMapMaxEntries)
-              : nullptr),
+      rtp_sequence_number_map_(need_rtp_packet_infos
+                                   ? absl::make_unique<RtpSequenceNumberMap>(
+                                         kRtpSequenceNumberMapMaxEntries)
+                                   : nullptr),
       red_payload_type_(-1),
       ulpfec_payload_type_(-1),
       flexfec_sender_(flexfec_sender),
diff --git a/modules/rtp_rtcp/source/rtp_sender_video.h b/modules/rtp_rtcp/source/rtp_sender_video.h
index bdbe90a..ecb3be5 100644
--- a/modules/rtp_rtcp/source/rtp_sender_video.h
+++ b/modules/rtp_rtcp/source/rtp_sender_video.h
@@ -58,6 +58,7 @@
                  PlayoutDelayOracle* playout_delay_oracle,
                  FrameEncryptorInterface* frame_encryptor,
                  bool require_frame_encryption,
+                 bool need_rtp_packet_infos,
                  const WebRtcKeyValueConfig& field_trials);
   virtual ~RTPSenderVideo();
 
diff --git a/modules/rtp_rtcp/source/rtp_sender_video_unittest.cc b/modules/rtp_rtcp/source/rtp_sender_video_unittest.cc
index 9864ecb..e6468aa 100644
--- a/modules/rtp_rtcp/source/rtp_sender_video_unittest.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_video_unittest.cc
@@ -104,6 +104,7 @@
                        &playout_delay_oracle_,
                        nullptr,
                        false,
+                       false,
                        field_trials) {}
   ~TestRtpSenderVideo() override {}
 
