| Index: webrtc/video/rtp_video_stream_receiver.cc
|
| diff --git a/webrtc/video/rtp_video_stream_receiver.cc b/webrtc/video/rtp_video_stream_receiver.cc
|
| index 1dbd86988d30df5d655be795b23e6bcefba4f54f..ba1df4a439ac6e7dda6611eba7da13d0091a3924 100644
|
| --- a/webrtc/video/rtp_video_stream_receiver.cc
|
| +++ b/webrtc/video/rtp_video_stream_receiver.cc
|
| @@ -98,7 +98,7 @@ RtpVideoStreamReceiver::RtpVideoStreamReceiver(
|
| packet_router_(packet_router),
|
| process_thread_(process_thread),
|
| ntp_estimator_(clock_),
|
| - rtp_header_parser_(RtpHeaderParser::Create()),
|
| + rtp_header_extensions_(config_.rtp.extensions),
|
| rtp_receiver_(RtpReceiver::CreateVideoReceiver(clock_,
|
| this,
|
| this,
|
| @@ -134,11 +134,6 @@ RtpVideoStreamReceiver::RtpVideoStreamReceiver(
|
| rtp_rtcp_->SetRemoteSSRC(config_.rtp.remote_ssrc);
|
| rtp_rtcp_->SetKeyFrameRequestMethod(kKeyFrameReqPliRtcp);
|
|
|
| - for (size_t i = 0; i < config_.rtp.extensions.size(); ++i) {
|
| - EnableReceiveRtpHeaderExtension(config_.rtp.extensions[i].uri,
|
| - config_.rtp.extensions[i].id);
|
| - }
|
| -
|
| static const int kMaxPacketAgeToNack = 450;
|
| const int max_reordering_threshold = (config_.rtp.nack.rtp_history_ms > 0)
|
| ? kMaxPacketAgeToNack
|
| @@ -281,11 +276,14 @@ int32_t RtpVideoStreamReceiver::OnReceivedPayloadData(
|
| // for callbacks from |ulpfec_receiver_|.
|
| void RtpVideoStreamReceiver::OnRecoveredPacket(const uint8_t* rtp_packet,
|
| size_t rtp_packet_length) {
|
| - RTPHeader header;
|
| - if (!rtp_header_parser_->Parse(rtp_packet, rtp_packet_length, &header)) {
|
| + RtpPacketReceived packet;
|
| + if (!packet.Parse(rtp_packet, rtp_packet_length))
|
| return;
|
| - }
|
| - header.payload_type_frequency = kVideoPayloadTypeFrequency;
|
| + packet.IdentifyExtensions(rtp_header_extensions_);
|
| + packet.set_payload_type_frequency(kVideoPayloadTypeFrequency);
|
| +
|
| + RTPHeader header;
|
| + packet.GetHeader(&header);
|
| bool in_order = IsPacketInOrder(header);
|
| ReceivePacket(rtp_packet, rtp_packet_length, header, in_order);
|
| }
|
| @@ -649,16 +647,6 @@ void RtpVideoStreamReceiver::UpdateHistograms() {
|
| }
|
| }
|
|
|
| -void RtpVideoStreamReceiver::EnableReceiveRtpHeaderExtension(
|
| - const std::string& extension, int id) {
|
| - // One-byte-extension local identifiers are in the range 1-14 inclusive.
|
| - RTC_DCHECK_GE(id, 1);
|
| - RTC_DCHECK_LE(id, 14);
|
| - RTC_DCHECK(RtpExtension::IsSupportedForVideo(extension));
|
| - RTC_CHECK(rtp_header_parser_->RegisterRtpHeaderExtension(
|
| - StringToRtpExtensionType(extension), id));
|
| -}
|
| -
|
| void RtpVideoStreamReceiver::InsertSpsPpsIntoTracker(uint8_t payload_type) {
|
| auto codec_params_it = pt_codec_params_.find(payload_type);
|
| if (codec_params_it == pt_codec_params_.end())
|
|
|