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

Unified Diff: media/cast/sender/frame_sender.cc

Issue 2048033003: Refactoring: CastTransport InitializeAudio/InitializeVideo. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add comments. Created 4 years, 5 months 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
« no previous file with comments | « media/cast/sender/frame_sender.h ('k') | media/cast/sender/video_sender.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/cast/sender/frame_sender.cc
diff --git a/media/cast/sender/frame_sender.cc b/media/cast/sender/frame_sender.cc
index 8098d78f173cc7b95c9c6d0d78ec4b0ffd97d88d..0cc66e52679fb973731db3920470480a4fcc6875 100644
--- a/media/cast/sender/frame_sender.cc
+++ b/media/cast/sender/frame_sender.cc
@@ -10,6 +10,7 @@
#include <vector>
#include "base/macros.h"
+#include "base/memory/ptr_util.h"
#include "base/numerics/safe_conversions.h"
#include "base/trace_event/trace_event.h"
#include "media/cast/constants.h"
@@ -53,32 +54,27 @@ void FrameSender::RtcpClient::OnReceivedPli() {
}
FrameSender::FrameSender(scoped_refptr<CastEnvironment> cast_environment,
- bool is_audio,
CastTransport* const transport_sender,
- int rtp_timebase,
- uint32_t ssrc,
- double max_frame_rate,
- base::TimeDelta min_playout_delay,
- base::TimeDelta max_playout_delay,
- base::TimeDelta animated_playout_delay,
+ const FrameSenderConfig& config,
CongestionControl* congestion_control)
: cast_environment_(cast_environment),
transport_sender_(transport_sender),
- ssrc_(ssrc),
- min_playout_delay_(min_playout_delay.is_zero() ? max_playout_delay
- : min_playout_delay),
- max_playout_delay_(max_playout_delay),
- animated_playout_delay_(animated_playout_delay.is_zero()
- ? max_playout_delay
- : animated_playout_delay),
+ ssrc_(config.sender_ssrc),
+ min_playout_delay_(config.min_playout_delay.is_zero()
+ ? config.max_playout_delay
+ : config.min_playout_delay),
+ max_playout_delay_(config.max_playout_delay),
+ animated_playout_delay_(config.animated_playout_delay.is_zero()
+ ? config.max_playout_delay
+ : config.animated_playout_delay),
send_target_playout_delay_(false),
- max_frame_rate_(max_frame_rate),
+ max_frame_rate_(config.max_frame_rate),
num_aggressive_rtcp_reports_sent_(0),
duplicate_ack_counter_(0),
congestion_control_(congestion_control),
picture_lost_at_receiver_(false),
- rtp_timebase_(rtp_timebase),
- is_audio_(is_audio),
+ rtp_timebase_(config.rtp_timebase),
+ is_audio_(config.rtp_payload_type <= RtpPayloadType::AUDIO_LAST),
weak_factory_(this) {
DCHECK(transport_sender_);
DCHECK_GT(rtp_timebase_, 0);
@@ -87,10 +83,21 @@ FrameSender::FrameSender(scoped_refptr<CastEnvironment> cast_environment,
// case today.
VLOG(1) << SENDER_SSRC << "min latency "
<< min_playout_delay_.InMilliseconds() << "max latency "
- << max_playout_delay.InMilliseconds() << "animated latency "
- << animated_playout_delay.InMilliseconds();
+ << max_playout_delay_.InMilliseconds() << "animated latency "
+ << animated_playout_delay_.InMilliseconds();
SetTargetPlayoutDelay(animated_playout_delay_);
send_target_playout_delay_ = false;
+
+ CastTransportRtpConfig transport_config;
+ transport_config.ssrc = config.sender_ssrc;
+ transport_config.feedback_ssrc = config.receiver_ssrc;
+ transport_config.rtp_payload_type = config.rtp_payload_type;
+ transport_config.aes_key = config.aes_key;
+ transport_config.aes_iv_mask = config.aes_iv_mask;
+
+ transport_sender->InitializeStream(
+ transport_config,
+ base::MakeUnique<FrameSender::RtcpClient>(weak_factory_.GetWeakPtr()));
}
FrameSender::~FrameSender() {
« no previous file with comments | « media/cast/sender/frame_sender.h ('k') | media/cast/sender/video_sender.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698