Allow VideoTimingExtension to be used with FEC
This CL allows for FEC protection of packets with VideoTimingExtension by zero-ing out data, which is changed after FEC protection is generated (i.e in the pacer or by the SFU). Actual FEC protection of these packets would be enabled later, when all modern receivers have this change. Bug: webrtc:10750 Change-Id: If4785392204d68cb8527629727b5c062f9fb6600 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/143760 Reviewed-by: Niels Moller <nisse@webrtc.org> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org> Cr-Commit-Position: refs/heads/master@{#28396}
This commit is contained in:
committed by
Commit Bot
parent
e4ac723bdc
commit
2d821c3cbc
@ -17,6 +17,7 @@
|
||||
#include <vector>
|
||||
|
||||
#include "api/rtp_headers.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_header_extension_map.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||
#include "modules/rtp_rtcp/include/ulpfec_receiver.h"
|
||||
#include "modules/rtp_rtcp/source/forward_error_correction.h"
|
||||
@ -26,7 +27,9 @@ namespace webrtc {
|
||||
|
||||
class UlpfecReceiverImpl : public UlpfecReceiver {
|
||||
public:
|
||||
explicit UlpfecReceiverImpl(uint32_t ssrc, RecoveredPacketReceiver* callback);
|
||||
explicit UlpfecReceiverImpl(uint32_t ssrc,
|
||||
RecoveredPacketReceiver* callback,
|
||||
rtc::ArrayView<const RtpExtension> extensions);
|
||||
~UlpfecReceiverImpl() override;
|
||||
|
||||
int32_t AddReceivedRedPacket(const RTPHeader& rtp_header,
|
||||
@ -40,6 +43,7 @@ class UlpfecReceiverImpl : public UlpfecReceiver {
|
||||
|
||||
private:
|
||||
const uint32_t ssrc_;
|
||||
const RtpHeaderExtensionMap extensions_;
|
||||
|
||||
rtc::CriticalSection crit_sect_;
|
||||
RecoveredPacketReceiver* recovered_packet_callback_;
|
||||
|
||||
Reference in New Issue
Block a user