diff options
author | Peter Kasting <pkasting@google.com> | 2015-08-24 14:52:23 -0700 |
---|---|---|
committer | Peter Kasting <pkasting@google.com> | 2015-08-24 21:52:45 +0000 |
commit | dce40cf804019a9898b6ab8d8262466b697c56e0 (patch) | |
tree | 83ae06d5acc897bbf2fe73ea0c944b5ea4a0414d /webrtc/modules/audio_coding/neteq/decision_logic.cc | |
parent | b594041ec8a3ae9f501260e2456d9d5ce6482819 (diff) | |
download | webrtc-dce40cf804019a9898b6ab8d8262466b697c56e0.tar.gz |
Update a ton of audio code to use size_t more correctly and in general reduce
use of int16_t/uint16_t.
This is the upshot of a recommendation by henrik.lundin and kwiberg on an original small change ( https://webrtc-codereview.appspot.com/42569004/#ps1 ) to stop using int16_t just because values could fit in it, and is similar in nature to a previous "mass change to use size_t more" ( https://webrtc-codereview.appspot.com/23129004/ ) which also needed to be split up for review but to land all at once, since, like adding "const", such changes tend to cause a lot of transitive effects.
This was be reviewed and approved in pieces:
https://codereview.webrtc.org/1224093003
https://codereview.webrtc.org/1224123002
https://codereview.webrtc.org/1224163002
https://codereview.webrtc.org/1225133003
https://codereview.webrtc.org/1225173002
https://codereview.webrtc.org/1227163003
https://codereview.webrtc.org/1227203003
https://codereview.webrtc.org/1227213002
https://codereview.webrtc.org/1227893002
https://codereview.webrtc.org/1228793004
https://codereview.webrtc.org/1228803003
https://codereview.webrtc.org/1228823002
https://codereview.webrtc.org/1228823003
https://codereview.webrtc.org/1228843002
https://codereview.webrtc.org/1230693002
https://codereview.webrtc.org/1231713002
The change is being landed as TBR to all the folks who reviewed the above.
BUG=chromium:81439
TEST=none
R=andrew@webrtc.org, pbos@webrtc.org
TBR=aluebs, andrew, asapersson, henrika, hlundin, jan.skoglund, kwiberg, minyue, pbos, pthatcher
Review URL: https://codereview.webrtc.org/1230503003 .
Cr-Commit-Position: refs/heads/master@{#9768}
Diffstat (limited to 'webrtc/modules/audio_coding/neteq/decision_logic.cc')
-rw-r--r-- | webrtc/modules/audio_coding/neteq/decision_logic.cc | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/webrtc/modules/audio_coding/neteq/decision_logic.cc b/webrtc/modules/audio_coding/neteq/decision_logic.cc index 5fb054c785..eb10e65897 100644 --- a/webrtc/modules/audio_coding/neteq/decision_logic.cc +++ b/webrtc/modules/audio_coding/neteq/decision_logic.cc @@ -24,7 +24,7 @@ namespace webrtc { DecisionLogic* DecisionLogic::Create(int fs_hz, - int output_size_samples, + size_t output_size_samples, NetEqPlayoutMode playout_mode, DecoderDatabase* decoder_database, const PacketBuffer& packet_buffer, @@ -56,7 +56,7 @@ DecisionLogic* DecisionLogic::Create(int fs_hz, } DecisionLogic::DecisionLogic(int fs_hz, - int output_size_samples, + size_t output_size_samples, NetEqPlayoutMode playout_mode, DecoderDatabase* decoder_database, const PacketBuffer& packet_buffer, @@ -95,7 +95,7 @@ void DecisionLogic::SoftReset() { timescale_hold_off_ = kMinTimescaleInterval; } -void DecisionLogic::SetSampleRate(int fs_hz, int output_size_samples) { +void DecisionLogic::SetSampleRate(int fs_hz, size_t output_size_samples) { // TODO(hlundin): Change to an enumerator and skip assert. assert(fs_hz == 8000 || fs_hz == 16000 || fs_hz == 32000 || fs_hz == 48000); fs_mult_ = fs_hz / 8000; @@ -104,7 +104,7 @@ void DecisionLogic::SetSampleRate(int fs_hz, int output_size_samples) { Operations DecisionLogic::GetDecision(const SyncBuffer& sync_buffer, const Expand& expand, - int decoder_frame_length, + size_t decoder_frame_length, const RTPHeader* packet_header, Modes prev_mode, bool play_dtmf, bool* reset_decoder) { @@ -123,9 +123,9 @@ Operations DecisionLogic::GetDecision(const SyncBuffer& sync_buffer, } } - const int samples_left = static_cast<int>( - sync_buffer.FutureLength() - expand.overlap_length()); - const int cur_size_samples = + const size_t samples_left = + sync_buffer.FutureLength() - expand.overlap_length(); + const size_t cur_size_samples = samples_left + packet_buffer_.NumSamplesInBuffer(decoder_database_, decoder_frame_length); LOG(LS_VERBOSE) << "Buffers: " << packet_buffer_.NumPacketsInBuffer() << @@ -153,9 +153,10 @@ void DecisionLogic::ExpandDecision(Operations operation) { } } -void DecisionLogic::FilterBufferLevel(int buffer_size_samples, +void DecisionLogic::FilterBufferLevel(size_t buffer_size_samples, Modes prev_mode) { - const int elapsed_time_ms = output_size_samples_ / (8 * fs_mult_); + const int elapsed_time_ms = + static_cast<int>(output_size_samples_ / (8 * fs_mult_)); delay_manager_->UpdateCounters(elapsed_time_ms); // Do not update buffer history if currently playing CNG since it will bias @@ -164,7 +165,7 @@ void DecisionLogic::FilterBufferLevel(int buffer_size_samples, buffer_level_filter_->SetTargetBufferLevel( delay_manager_->base_target_level()); - int buffer_size_packets = 0; + size_t buffer_size_packets = 0; if (packet_length_samples_ > 0) { // Calculate size in packets. buffer_size_packets = buffer_size_samples / packet_length_samples_; |