Index: webrtc/voice_engine/channel.cc |
diff --git a/webrtc/voice_engine/channel.cc b/webrtc/voice_engine/channel.cc |
index d69654fb0f2451f1a5e49564f63ef90a32056aff..94e04a18a4bcfc6fd583e37e5e356ede8457b006 100644 |
--- a/webrtc/voice_engine/channel.cc |
+++ b/webrtc/voice_engine/channel.cc |
@@ -32,6 +32,7 @@ |
#include "webrtc/modules/rtp_rtcp/include/receive_statistics.h" |
#include "webrtc/modules/rtp_rtcp/include/rtp_payload_registry.h" |
#include "webrtc/modules/rtp_rtcp/include/rtp_receiver.h" |
+#include "webrtc/modules/rtp_rtcp/source/rtp_packet_received.h" |
#include "webrtc/modules/rtp_rtcp/source/rtp_receiver_strategy.h" |
#include "webrtc/modules/utility/include/process_thread.h" |
#include "webrtc/system_wrappers/include/trace.h" |
@@ -1551,9 +1552,7 @@ int32_t Channel::DeRegisterExternalTransport() { |
return 0; |
} |
-int32_t Channel::ReceivedRTPPacket(const uint8_t* received_packet, |
- size_t length, |
- const PacketTime& packet_time) { |
+void Channel::OnRtpPacket(const RtpPacketReceived& packet) { |
WEBRTC_TRACE(kTraceStream, kTraceVoice, VoEId(_instanceId, _channelId), |
"Channel::ReceivedRTPPacket()"); |
@@ -1561,21 +1560,17 @@ int32_t Channel::ReceivedRTPPacket(const uint8_t* received_packet, |
UpdatePlayoutTimestamp(false); |
RTPHeader header; |
- if (!rtp_header_parser_->Parse(received_packet, length, &header)) { |
- WEBRTC_TRACE(webrtc::kTraceDebug, webrtc::kTraceVoice, _channelId, |
- "Incoming packet: invalid RTP header"); |
- return -1; |
- } |
+ packet.GetHeader(&header); |
header.payload_type_frequency = |
rtp_payload_registry_->GetPayloadTypeFrequency(header.payloadType); |
if (header.payload_type_frequency < 0) |
- return -1; |
+ return; |
bool in_order = IsPacketInOrder(header); |
rtp_receive_statistics_->IncomingPacket( |
- header, length, IsPacketRetransmitted(header, in_order)); |
+ header, packet.size(), IsPacketRetransmitted(header, in_order)); |
rtp_payload_registry_->SetIncomingPayloadType(header); |
- return ReceivePacket(received_packet, length, header, in_order) ? 0 : -1; |
+ ReceivePacket(packet.data(), packet.size(), header, in_order); |
} |
bool Channel::ReceivePacket(const uint8_t* packet, |