diff options
author | justinlin@chromium.org <justinlin@chromium.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2013-05-13 22:59:00 +0000 |
---|---|---|
committer | justinlin@chromium.org <justinlin@chromium.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2013-05-13 22:59:00 +0000 |
commit | d474c1380229d8b301f6cb4c3b84ad0d4ac18632 (patch) | |
tree | 9ef5e615784da1d29882ccc6fa479101307984f2 | |
parent | dcfeff72b4fdd33b544f9ba88144e4240cc8a255 (diff) | |
download | webrtc-d474c1380229d8b301f6cb4c3b84ad0d4ac18632.tar.gz |
Add more tracing for key frames.
R=mallinath@webrtc.org, stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1428004
git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@4015 4adac7df-926f-26a2-2b94-8c16560cd09d
-rw-r--r-- | modules/rtp_rtcp/source/rtcp_receiver.cc | 2 | ||||
-rw-r--r-- | modules/rtp_rtcp/source/rtp_sender.cc | 12 | ||||
-rw-r--r-- | modules/video_coding/main/source/jitter_buffer.cc | 2 | ||||
-rw-r--r-- | modules/video_coding/main/source/video_coding_impl.cc | 11 | ||||
-rw-r--r-- | video_engine/vie_encoder.cc | 1 |
5 files changed, 22 insertions, 6 deletions
diff --git a/modules/rtp_rtcp/source/rtcp_receiver.cc b/modules/rtp_rtcp/source/rtcp_receiver.cc index 3b9659a5..bfb5f509 100644 --- a/modules/rtp_rtcp/source/rtcp_receiver.cc +++ b/modules/rtp_rtcp/source/rtcp_receiver.cc @@ -918,6 +918,8 @@ void RTCPReceiver::HandlePLI(RTCPUtility::RTCPParserV2& rtcpParser, RTCPPacketInformation& rtcpPacketInformation) { const RTCPUtility::RTCPPacket& rtcpPacket = rtcpParser.Packet(); if (_SSRC == rtcpPacket.PLI.MediaSSRC) { + TRACE_EVENT_INSTANT0("webrtc_rtp", "PLI"); + // Received a signal that we need to send a new key frame. rtcpPacketInformation.rtcpPacketTypeFlags |= kRtcpPli; } diff --git a/modules/rtp_rtcp/source/rtp_sender.cc b/modules/rtp_rtcp/source/rtp_sender.cc index b4cdf696..cfc7c662 100644 --- a/modules/rtp_rtcp/source/rtp_sender.cc +++ b/modules/rtp_rtcp/source/rtp_sender.cc @@ -330,9 +330,6 @@ int32_t RTPSender::SendOutgoingData( const uint8_t *payload_data, const uint32_t payload_size, const RTPFragmentationHeader *fragmentation, VideoCodecInformation *codec_info, const RTPVideoTypeHeader *rtp_type_hdr) { - TRACE_EVENT2("webrtc_rtp", "RTPSender::SendOutgoingData", - "timestsamp", capture_timestamp, - "frame_type", FrameTypeToString(frame_type)); { // Drop this packet if we're not sending media packets. CriticalSectionScoped cs(send_critsect_); @@ -348,6 +345,15 @@ int32_t RTPSender::SendOutgoingData( return -1; } + if (frame_type == kVideoFrameKey) { + TRACE_EVENT_INSTANT1("webrtc_rtp", "SendKeyFrame", + "timestamp", capture_timestamp); + } else { + TRACE_EVENT_INSTANT2("webrtc_rtp", "SendFrame", + "timestsamp", capture_timestamp, + "frame_type", FrameTypeToString(frame_type)); + } + if (audio_configured_) { assert(frame_type == kAudioFrameSpeech || frame_type == kAudioFrameCN || frame_type == kFrameEmpty); diff --git a/modules/video_coding/main/source/jitter_buffer.cc b/modules/video_coding/main/source/jitter_buffer.cc index da91b681..ea26032b 100644 --- a/modules/video_coding/main/source/jitter_buffer.cc +++ b/modules/video_coding/main/source/jitter_buffer.cc @@ -981,6 +981,8 @@ bool VCMJitterBuffer::HandleTooOldPackets(uint16_t latest_sequence_number) { void VCMJitterBuffer::DropPacketsFromNackList( uint16_t last_decoded_sequence_number) { + TRACE_EVENT_INSTANT1("webrtc", "JB::DropPacketsFromNackList", + "seqnum", last_decoded_sequence_number); // Erase all sequence numbers from the NACK list which we won't need any // longer. missing_sequence_numbers_.erase(missing_sequence_numbers_.begin(), diff --git a/modules/video_coding/main/source/video_coding_impl.cc b/modules/video_coding/main/source/video_coding_impl.cc index 4ed2e805..f2ad9875 100644 --- a/modules/video_coding/main/source/video_coding_impl.cc +++ b/modules/video_coding/main/source/video_coding_impl.cc @@ -1248,9 +1248,14 @@ VideoCodingModuleImpl::IncomingPacket(const uint8_t* incomingPayload, uint32_t payloadLength, const WebRtcRTPHeader& rtpInfo) { - TRACE_EVENT2("webrtc", "VCM::Packet", - "seqnum", rtpInfo.header.sequenceNumber, - "type", rtpInfo.frameType); + if (rtpInfo.frameType == kVideoFrameKey) { + TRACE_EVENT1("webrtc", "VCM::PacketKeyFrame", + "seqnum", rtpInfo.header.sequenceNumber); + } else { + TRACE_EVENT2("webrtc", "VCM::Packet", + "seqnum", rtpInfo.header.sequenceNumber, + "type", rtpInfo.frameType); + } if (incomingPayload == NULL) { // The jitter buffer doesn't handle non-zero payload lengths for packets // without payload. diff --git a/video_engine/vie_encoder.cc b/video_engine/vie_encoder.cc index e0be2523..32a6f2a7 100644 --- a/video_engine/vie_encoder.cc +++ b/video_engine/vie_encoder.cc @@ -926,6 +926,7 @@ void ViEEncoder::OnReceivedIntraFrameRequest(uint32_t ssrc) { // Key frame request from remote side, signal to VCM. WEBRTC_TRACE(webrtc::kTraceStateInfo, webrtc::kTraceVideo, ViEId(engine_id_, channel_id_), "%s", __FUNCTION__); + TRACE_EVENT0("webrtc", "OnKeyFrameRequest"); int idx = 0; { |