Misc. small cleanups.
* Better param names * Avoid using negative values for (bogus) placeholder channel counts (mostly in tests). Since channels will be changing to size_t, negative values will be illegal; it's sufficient to use 0 in these cases. * Use arraysize() * Use size_t for counting frames, samples, blocks, buffers, and bytes -- most of these are already size_t in most places, this just fixes some stragglers * reinterpret_cast<int64_t>(void*) is not necessarily safe; use uintptr_t instead * Remove unnecessary code, e.g. dead code, needlessly long/repetitive code, or function overrides that exactly match the base definition * Fix indenting * Use uint32_t for timestamps (matching how it's already a uint32_t in most places) * Spelling * RTC_CHECK_EQ(expected, actual) * Rewrap * Use .empty() * Be more pedantic about matching int/int32_t/ * Remove pointless consts on input parameters to functions * Add missing sanity checks All this was found in the course of constructing https://codereview.webrtc.org/1316523002/ , and is being landed separately first. BUG=none TEST=none Review URL: https://codereview.webrtc.org/1534193008 Cr-Commit-Position: refs/heads/master@{#11191}
This commit is contained in:
@ -206,16 +206,16 @@ void OpusTest::Perform() {
|
||||
}
|
||||
|
||||
void OpusTest::Run(TestPackStereo* channel, int channels, int bitrate,
|
||||
int frame_length, int percent_loss) {
|
||||
size_t frame_length, int percent_loss) {
|
||||
AudioFrame audio_frame;
|
||||
int32_t out_freq_hz_b = out_file_.SamplingFrequency();
|
||||
const int kBufferSizeSamples = 480 * 12 * 2; // Can hold 120 ms stereo audio.
|
||||
const size_t kBufferSizeSamples = 480 * 12 * 2; // 120 ms stereo audio.
|
||||
int16_t audio[kBufferSizeSamples];
|
||||
int16_t out_audio[kBufferSizeSamples];
|
||||
int16_t audio_type;
|
||||
int written_samples = 0;
|
||||
int read_samples = 0;
|
||||
int decoded_samples = 0;
|
||||
size_t written_samples = 0;
|
||||
size_t read_samples = 0;
|
||||
size_t decoded_samples = 0;
|
||||
bool first_packet = true;
|
||||
uint32_t start_time_stamp = 0;
|
||||
|
||||
@ -268,14 +268,14 @@ void OpusTest::Run(TestPackStereo* channel, int channels, int bitrate,
|
||||
|
||||
// Sometimes we need to loop over the audio vector to produce the right
|
||||
// number of packets.
|
||||
int loop_encode = (written_samples - read_samples) /
|
||||
size_t loop_encode = (written_samples - read_samples) /
|
||||
(channels * frame_length);
|
||||
|
||||
if (loop_encode > 0) {
|
||||
const int kMaxBytes = 1000; // Maximum number of bytes for one packet.
|
||||
const size_t kMaxBytes = 1000; // Maximum number of bytes for one packet.
|
||||
size_t bitstream_len_byte;
|
||||
uint8_t bitstream[kMaxBytes];
|
||||
for (int i = 0; i < loop_encode; i++) {
|
||||
for (size_t i = 0; i < loop_encode; i++) {
|
||||
int bitstream_len_byte_int = WebRtcOpus_Encode(
|
||||
(channels == 1) ? opus_mono_encoder_ : opus_stereo_encoder_,
|
||||
&audio[read_samples], frame_length, kMaxBytes, bitstream);
|
||||
@ -326,7 +326,7 @@ void OpusTest::Run(TestPackStereo* channel, int channels, int bitrate,
|
||||
first_packet = false;
|
||||
start_time_stamp = rtp_timestamp_;
|
||||
}
|
||||
rtp_timestamp_ += frame_length;
|
||||
rtp_timestamp_ += static_cast<uint32_t>(frame_length);
|
||||
read_samples += frame_length * channels;
|
||||
}
|
||||
if (read_samples == written_samples) {
|
||||
@ -344,8 +344,7 @@ void OpusTest::Run(TestPackStereo* channel, int channels, int bitrate,
|
||||
audio_frame.samples_per_channel_ * audio_frame.num_channels_);
|
||||
|
||||
// Write stand-alone speech to file.
|
||||
out_file_standalone_.Write10MsData(
|
||||
out_audio, static_cast<size_t>(decoded_samples) * channels);
|
||||
out_file_standalone_.Write10MsData(out_audio, decoded_samples * channels);
|
||||
|
||||
if (audio_frame.timestamp_ > start_time_stamp) {
|
||||
// Number of channels should be the same for both stand-alone and
|
||||
|
||||
@ -31,7 +31,10 @@ class OpusTest : public ACMTest {
|
||||
void Perform();
|
||||
|
||||
private:
|
||||
void Run(TestPackStereo* channel, int channels, int bitrate, int frame_length,
|
||||
void Run(TestPackStereo* channel,
|
||||
int channels,
|
||||
int bitrate,
|
||||
size_t frame_length,
|
||||
int percent_loss = 0);
|
||||
|
||||
void OpenOutFile(int test_number);
|
||||
@ -44,7 +47,7 @@ class OpusTest : public ACMTest {
|
||||
PCMFile out_file_standalone_;
|
||||
int counter_;
|
||||
uint8_t payload_type_;
|
||||
int rtp_timestamp_;
|
||||
uint32_t rtp_timestamp_;
|
||||
acm2::ACMResampler resampler_;
|
||||
WebRtcOpusEncInst* opus_mono_encoder_;
|
||||
WebRtcOpusEncInst* opus_stereo_encoder_;
|
||||
|
||||
Reference in New Issue
Block a user