Refactor registerable callbacks for VideoBitrateObserver from rtp_rtcp module into vie_channel.

R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/20879004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6626 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
andresp@webrtc.org
2014-07-08 14:32:58 +00:00
parent 3d7da88e06
commit d11bec40b2
8 changed files with 57 additions and 61 deletions

View File

@ -45,7 +45,8 @@ RTPSender::RTPSender(const int32_t id,
Clock* clock,
Transport* transport,
RtpAudioFeedback* audio_feedback,
PacedSender* paced_sender)
PacedSender* paced_sender,
BitrateStatisticsObserver* bitrate_callback)
: clock_(clock),
bitrate_sent_(clock, this),
id_(id),
@ -72,7 +73,7 @@ RTPSender::RTPSender(const int32_t id,
statistics_crit_(CriticalSectionWrapper::CreateCriticalSection()),
frame_count_observer_(NULL),
rtp_stats_callback_(NULL),
bitrate_callback_(NULL),
bitrate_callback_(bitrate_callback),
// RTP variables
start_timestamp_forced_(false),
start_timestamp_(0),
@ -1684,16 +1685,6 @@ StreamDataCountersCallback* RTPSender::GetRtpStatisticsCallback() const {
return rtp_stats_callback_;
}
void RTPSender::RegisterBitrateObserver(BitrateStatisticsObserver* observer) {
CriticalSectionScoped cs(statistics_crit_.get());
bitrate_callback_ = observer;
}
BitrateStatisticsObserver* RTPSender::GetBitrateObserver() const {
CriticalSectionScoped cs(statistics_crit_.get());
return bitrate_callback_;
}
uint32_t RTPSender::BitrateSent() const { return bitrate_sent_.BitrateLast(); }
void RTPSender::BitrateUpdated(const BitrateStatistics& stats) {
@ -1702,7 +1693,6 @@ void RTPSender::BitrateUpdated(const BitrateStatistics& stats) {
CriticalSectionScoped ssrc_lock(send_critsect_);
ssrc = ssrc_;
}
CriticalSectionScoped cs(statistics_crit_.get());
if (bitrate_callback_) {
bitrate_callback_->Notify(stats, ssrc);
}