Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(894)

Unified Diff: media/cast/rtp_sender/rtp_sender.cc

Issue 69603002: Incorporating logging into Cast (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: clean up Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/cast/rtp_sender/rtp_sender.cc
diff --git a/media/cast/rtp_sender/rtp_sender.cc b/media/cast/rtp_sender/rtp_sender.cc
index d06a503dc89018b20fa8fd4936388c3f6185c00f..3b8b1f59ecaa37fde9126b7ddaa49294f32a498d 100644
--- a/media/cast/rtp_sender/rtp_sender.cc
+++ b/media/cast/rtp_sender/rtp_sender.cc
@@ -9,28 +9,32 @@
#include "media/cast/cast_defines.h"
#include "media/cast/pacing/paced_sender.h"
#include "media/cast/rtcp/rtcp_defines.h"
+#include "net/base/big_endian.h"
namespace media {
namespace cast {
-RtpSender::RtpSender(base::TickClock* clock,
+RtpSender::RtpSender(scoped_refptr<CastEnvironment> cast_environment,
const AudioSenderConfig* audio_config,
const VideoSenderConfig* video_config,
PacedPacketSender* transport)
- : config_(),
- transport_(transport),
- clock_(clock) {
+ : clock_(cast_environment->Clock()),
Alpha Left Google 2013/11/14 00:29:24 This is not used anywhere in this file. Please rem
mikhal 2013/11/14 17:42:31 Done.
+ cast_environment_(cast_environment),
+ config_(),
+ transport_(transport) {
// Store generic cast config and create packetizer config.
DCHECK(audio_config || video_config) << "Invalid argument";
if (audio_config) {
- storage_.reset(new PacketStorage(clock, audio_config->rtp_history_ms));
+ storage_.reset(new PacketStorage(cast_environment->Clock(),
+ audio_config->rtp_history_ms));
config_.audio = true;
config_.ssrc = audio_config->sender_ssrc;
config_.payload_type = audio_config->rtp_payload_type;
config_.frequency = audio_config->frequency;
config_.audio_codec = audio_config->codec;
} else {
- storage_.reset(new PacketStorage(clock, video_config->rtp_history_ms));
+ storage_.reset(new PacketStorage(cast_environment->Clock(),
+ video_config->rtp_history_ms));
config_.audio = false;
config_.ssrc = video_config->sender_ssrc;
config_.payload_type = video_config->rtp_payload_type;
@@ -82,6 +86,13 @@ void RtpSender::ResendPackets(
// Set a unique incremental sequence number for every packet.
Packet& packet = packets_to_resend.back();
UpdateSequenceNumber(&packet);
+ // Log retransmission (first extract rtp_timestamp).
+ uint32 rtp_timestamp;
+ net::BigEndianReader big_endian_reader(packet.data() + 4, 4);
+ big_endian_reader.ReadU32(&rtp_timestamp);
+ // TODO(mikhal): Consider placing the max value instead of -1.
+ cast_environment_->Logging()->InsertPacketEvent(kPacketRetransmited,
+ rtp_timestamp, frame_id, packet_id, -1, packet.size());
// Set the size as correspond to each frame.
++packet_id;
}

Powered by Google App Engine
This is Rietveld 408576698