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

Unified Diff: webrtc/modules/video_coding/jitter_buffer.cc

Issue 2790533002: Remove ALL usage of CriticalSectionWrapper. (Closed)
Patch Set: remove winXP rw_lock include Created 3 years, 9 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 | « webrtc/modules/video_coding/jitter_buffer.h ('k') | webrtc/system_wrappers/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/video_coding/jitter_buffer.cc
diff --git a/webrtc/modules/video_coding/jitter_buffer.cc b/webrtc/modules/video_coding/jitter_buffer.cc
index 345bdf7e1a44fba1b4e0aaf80418db1edd594e7e..c74ebe581596cec071cb07991277f7205334cf64 100644
--- a/webrtc/modules/video_coding/jitter_buffer.cc
+++ b/webrtc/modules/video_coding/jitter_buffer.cc
@@ -27,7 +27,6 @@
#include "webrtc/modules/video_coding/jitter_estimator.h"
#include "webrtc/modules/video_coding/packet.h"
#include "webrtc/system_wrappers/include/clock.h"
-#include "webrtc/system_wrappers/include/critical_section_wrapper.h"
#include "webrtc/system_wrappers/include/event_wrapper.h"
#include "webrtc/system_wrappers/include/field_trial.h"
#include "webrtc/system_wrappers/include/metrics.h"
@@ -221,7 +220,6 @@ VCMJitterBuffer::VCMJitterBuffer(Clock* clock,
KeyFrameRequestSender* keyframe_request_sender)
: clock_(clock),
running_(false),
- crit_sect_(CriticalSectionWrapper::CreateCriticalSection()),
frame_event_(std::move(event)),
max_number_of_frames_(kStartNumberOfFrames),
free_frames_(),
@@ -272,7 +270,6 @@ VCMJitterBuffer::~VCMJitterBuffer() {
it != decodable_frames_.end(); ++it) {
delete it->second;
}
- delete crit_sect_;
}
void VCMJitterBuffer::UpdateHistograms() {
@@ -304,7 +301,7 @@ void VCMJitterBuffer::UpdateHistograms() {
}
void VCMJitterBuffer::Start() {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
running_ = true;
incoming_frame_count_ = 0;
incoming_frame_rate_ = 0;
@@ -332,7 +329,7 @@ void VCMJitterBuffer::Start() {
}
void VCMJitterBuffer::Stop() {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
UpdateHistograms();
running_ = false;
last_decoded_state_.Reset();
@@ -342,12 +339,12 @@ void VCMJitterBuffer::Stop() {
}
bool VCMJitterBuffer::Running() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return running_;
}
void VCMJitterBuffer::Flush() {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
decodable_frames_.Reset(&free_frames_);
incomplete_frames_.Reset(&free_frames_);
last_decoded_state_.Reset(); // TODO(mikhal): sync reset.
@@ -364,22 +361,22 @@ void VCMJitterBuffer::Flush() {
// Get received key and delta frames
FrameCounts VCMJitterBuffer::FrameStatistics() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return receive_statistics_;
}
int VCMJitterBuffer::num_packets() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return num_packets_;
}
int VCMJitterBuffer::num_duplicated_packets() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return num_duplicated_packets_;
}
int VCMJitterBuffer::num_discarded_packets() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return num_discarded_packets_;
}
@@ -388,7 +385,7 @@ void VCMJitterBuffer::IncomingRateStatistics(unsigned int* framerate,
unsigned int* bitrate) {
assert(framerate);
assert(bitrate);
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
const int64_t now = clock_->TimeInMilliseconds();
int64_t diff = now - time_last_incoming_frame_count_;
if (diff < 1000 && incoming_frame_rate_ > 0 && incoming_bit_rate_ > 0) {
@@ -445,9 +442,9 @@ void VCMJitterBuffer::IncomingRateStatistics(unsigned int* framerate,
// Returns immediately or a |max_wait_time_ms| ms event hang waiting for a
// complete frame, |max_wait_time_ms| decided by caller.
VCMEncodedFrame* VCMJitterBuffer::NextCompleteFrame(uint32_t max_wait_time_ms) {
- crit_sect_->Enter();
+ crit_sect_.Enter();
if (!running_) {
- crit_sect_->Leave();
+ crit_sect_.Leave();
return nullptr;
}
CleanUpOldOrEmptyFrames();
@@ -458,14 +455,14 @@ VCMEncodedFrame* VCMJitterBuffer::NextCompleteFrame(uint32_t max_wait_time_ms) {
clock_->TimeInMilliseconds() + max_wait_time_ms;
int64_t wait_time_ms = max_wait_time_ms;
while (wait_time_ms > 0) {
- crit_sect_->Leave();
+ crit_sect_.Leave();
const EventTypeWrapper ret =
frame_event_->Wait(static_cast<uint32_t>(wait_time_ms));
- crit_sect_->Enter();
+ crit_sect_.Enter();
if (ret == kEventSignaled) {
// Are we shutting down the jitter buffer?
if (!running_) {
- crit_sect_->Leave();
+ crit_sect_.Leave();
return nullptr;
}
// Finding oldest frame ready for decoder.
@@ -483,16 +480,16 @@ VCMEncodedFrame* VCMJitterBuffer::NextCompleteFrame(uint32_t max_wait_time_ms) {
}
if (decodable_frames_.empty() ||
decodable_frames_.Front()->GetState() != kStateComplete) {
- crit_sect_->Leave();
+ crit_sect_.Leave();
return nullptr;
}
VCMEncodedFrame* encoded_frame = decodable_frames_.Front();
- crit_sect_->Leave();
+ crit_sect_.Leave();
return encoded_frame;
}
bool VCMJitterBuffer::NextMaybeIncompleteTimestamp(uint32_t* timestamp) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
if (!running_) {
return false;
}
@@ -529,7 +526,7 @@ bool VCMJitterBuffer::NextMaybeIncompleteTimestamp(uint32_t* timestamp) {
}
VCMEncodedFrame* VCMJitterBuffer::ExtractAndSetDecode(uint32_t timestamp) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
if (!running_) {
return NULL;
}
@@ -583,7 +580,7 @@ VCMEncodedFrame* VCMJitterBuffer::ExtractAndSetDecode(uint32_t timestamp) {
// frames from within the jitter buffer.
void VCMJitterBuffer::ReleaseFrame(VCMEncodedFrame* frame) {
RTC_CHECK(frame != nullptr);
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
VCMFrameBuffer* frame_buffer = static_cast<VCMFrameBuffer*>(frame);
RecycleFrameBuffer(frame_buffer);
}
@@ -624,7 +621,7 @@ VCMFrameBufferEnum VCMJitterBuffer::GetFrame(const VCMPacket& packet,
int64_t VCMJitterBuffer::LastPacketTime(const VCMEncodedFrame* frame,
bool* retransmitted) const {
assert(retransmitted);
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
const VCMFrameBuffer* frame_buffer =
static_cast<const VCMFrameBuffer*>(frame);
*retransmitted = (frame_buffer->GetNackCount() > 0);
@@ -633,7 +630,7 @@ int64_t VCMJitterBuffer::LastPacketTime(const VCMEncodedFrame* frame,
VCMFrameBufferEnum VCMJitterBuffer::InsertPacket(const VCMPacket& packet,
bool* retransmitted) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
++num_packets_;
if (num_packets_ == 1) {
@@ -880,7 +877,7 @@ void VCMJitterBuffer::FindAndInsertContinuousFramesWithState(
}
uint32_t VCMJitterBuffer::EstimatedJitterMs() {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
// Compute RTT multiplier for estimation.
// low_rtt_nackThresholdMs_ == -1 means no FEC.
double rtt_mult = 1.0f;
@@ -894,7 +891,7 @@ uint32_t VCMJitterBuffer::EstimatedJitterMs() {
}
void VCMJitterBuffer::UpdateRtt(int64_t rtt_ms) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
rtt_ms_ = rtt_ms;
jitter_estimate_.UpdateRtt(rtt_ms);
if (!WaitForRetransmissions())
@@ -904,7 +901,7 @@ void VCMJitterBuffer::UpdateRtt(int64_t rtt_ms) {
void VCMJitterBuffer::SetNackMode(VCMNackMode mode,
int64_t low_rtt_nack_threshold_ms,
int64_t high_rtt_nack_threshold_ms) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
nack_mode_ = mode;
if (mode == kNoNack) {
missing_sequence_numbers_.clear();
@@ -928,7 +925,7 @@ void VCMJitterBuffer::SetNackMode(VCMNackMode mode,
void VCMJitterBuffer::SetNackSettings(size_t max_nack_list_size,
int max_packet_age_to_nack,
int max_incomplete_time_ms) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
assert(max_packet_age_to_nack >= 0);
assert(max_incomplete_time_ms_ >= 0);
max_nack_list_size_ = max_nack_list_size;
@@ -937,7 +934,7 @@ void VCMJitterBuffer::SetNackSettings(size_t max_nack_list_size,
}
VCMNackMode VCMJitterBuffer::nack_mode() const {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
return nack_mode_;
}
@@ -964,7 +961,7 @@ uint16_t VCMJitterBuffer::EstimatedLowSequenceNumber(
}
std::vector<uint16_t> VCMJitterBuffer::GetNackList(bool* request_key_frame) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
*request_key_frame = false;
if (nack_mode_ == kNoNack) {
return std::vector<uint16_t>();
@@ -1024,7 +1021,7 @@ std::vector<uint16_t> VCMJitterBuffer::GetNackList(bool* request_key_frame) {
}
void VCMJitterBuffer::SetDecodeErrorMode(VCMDecodeErrorMode error_mode) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
decode_error_mode_ = error_mode;
}
@@ -1124,7 +1121,7 @@ void VCMJitterBuffer::DropPacketsFromNackList(
void VCMJitterBuffer::RegisterStatsCallback(
VCMReceiveStatisticsCallback* callback) {
- CriticalSectionScoped cs(crit_sect_);
+ rtc::CritScope cs(&crit_sect_);
stats_callback_ = callback;
}
« no previous file with comments | « webrtc/modules/video_coding/jitter_buffer.h ('k') | webrtc/system_wrappers/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698