Switch to base/logging.h in neteq_impl.cc
This change includes base/logging.h instead of the old and deprecated
system_wrappers/interface/logging.h. This requires some changes of the
actual logging invocations.
For reference the following regexps where used (in Eclipse) for a few
of the replacements:
find: LOG_FERR1\(\s*([^,]*),\s*([^,]*),\s*(.*)\);
replace: LOG($1) << "$2 " << $3;
find: LOG_FERR2\(\s*([^,]*),\s*([^,]*),\s*([^,]*),\s*(.*)\);
replace: LOG($1) << "$2 " << $3 << " " << $4;
BUG=4735
R=minyue@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50229004 .
Cr-Commit-Position: refs/heads/master@{#9669}
diff --git a/webrtc/modules/audio_coding/neteq/comfort_noise.cc b/webrtc/modules/audio_coding/neteq/comfort_noise.cc
index 54b0a28..da9683b 100644
--- a/webrtc/modules/audio_coding/neteq/comfort_noise.cc
+++ b/webrtc/modules/audio_coding/neteq/comfort_noise.cc
@@ -12,6 +12,7 @@
#include <assert.h>
+#include "webrtc/base/logging.h"
#include "webrtc/modules/audio_coding/codecs/audio_decoder.h"
#include "webrtc/modules/audio_coding/codecs/cng/include/webrtc_cng.h"
#include "webrtc/modules/audio_coding/neteq/decoder_database.h"
@@ -44,6 +45,7 @@
delete packet;
if (ret < 0) {
internal_error_code_ = WebRtcCng_GetErrorCodeDec(cng_inst);
+ LOG(LS_ERROR) << "WebRtcCng_UpdateSid produced " << internal_error_code_;
return kInternalError;
}
return kOK;
@@ -56,6 +58,7 @@
fs_hz_ == 48000);
// Not adapted for multi-channel yet.
if (output->Channels() != 1) {
+ LOG(LS_ERROR) << "No multi-channel support";
return kMultiChannelNotSupported;
}
@@ -70,6 +73,7 @@
// Get the decoder from the database.
AudioDecoder* cng_decoder = decoder_database_->GetActiveCngDecoder();
if (!cng_decoder) {
+ LOG(LS_ERROR) << "Unknwown payload type";
return kUnknownPayloadType;
}
CNG_dec_inst* cng_inst = cng_decoder->CngDecoderInstance();
@@ -81,6 +85,7 @@
// Error returned.
output->Zeros(requested_length);
internal_error_code_ = WebRtcCng_GetErrorCodeDec(cng_inst);
+ LOG(LS_ERROR) << "WebRtcCng_Generate produced " << internal_error_code_;
return kInternalError;
}
diff --git a/webrtc/modules/audio_coding/neteq/decoder_database.cc b/webrtc/modules/audio_coding/neteq/decoder_database.cc
index b9097b0..18eee06 100644
--- a/webrtc/modules/audio_coding/neteq/decoder_database.cc
+++ b/webrtc/modules/audio_coding/neteq/decoder_database.cc
@@ -13,6 +13,7 @@
#include <assert.h>
#include <utility> // pair
+#include "webrtc/base/logging.h"
#include "webrtc/modules/audio_coding/codecs/audio_decoder.h"
namespace webrtc {
@@ -249,6 +250,8 @@
for (it = packet_list.begin(); it != packet_list.end(); ++it) {
if (decoders_.find((*it)->header.payloadType) == decoders_.end()) {
// Payload type is not found.
+ LOG(LS_WARNING) << "CheckPayloadTypes: unknown RTP payload type "
+ << static_cast<int>((*it)->header.payloadType);
return kDecoderNotFound;
}
}
diff --git a/webrtc/modules/audio_coding/neteq/dtmf_buffer.cc b/webrtc/modules/audio_coding/neteq/dtmf_buffer.cc
index 24aa9fe..b3c02e0 100644
--- a/webrtc/modules/audio_coding/neteq/dtmf_buffer.cc
+++ b/webrtc/modules/audio_coding/neteq/dtmf_buffer.cc
@@ -13,6 +13,9 @@
#include <assert.h>
#include <algorithm> // max
+#include "webrtc/base/checks.h"
+#include "webrtc/base/logging.h"
+
// Modify the code to obtain backwards bit-exactness. Once bit-exactness is no
// longer required, this #define should be removed (and the code that it
// enables).
@@ -67,10 +70,10 @@
const uint8_t* payload,
size_t payload_length_bytes,
DtmfEvent* event) {
- if (!payload || !event) {
- return kInvalidPointer;
- }
+ CHECK(payload);
+ CHECK(event);
if (payload_length_bytes < 4) {
+ LOG(LS_WARNING) << "ParseEvent payload too short";
return kPayloadTooShort;
}
@@ -98,6 +101,7 @@
if (event.event_no < 0 || event.event_no > 15 ||
event.volume < 0 || event.volume > 36 ||
event.duration <= 0 || event.duration > 65535) {
+ LOG(LS_WARNING) << "InsertEvent invalid parameters";
return kInvalidEventParameters;
}
DtmfList::iterator it = buffer_.begin();
diff --git a/webrtc/modules/audio_coding/neteq/dtmf_buffer_unittest.cc b/webrtc/modules/audio_coding/neteq/dtmf_buffer_unittest.cc
index 4824b2b..dad4e76 100644
--- a/webrtc/modules/audio_coding/neteq/dtmf_buffer_unittest.cc
+++ b/webrtc/modules/audio_coding/neteq/dtmf_buffer_unittest.cc
@@ -77,12 +77,6 @@
EXPECT_EQ(timestamp, event.timestamp);
EXPECT_EQ(volume, event.volume);
- EXPECT_EQ(DtmfBuffer::kInvalidPointer,
- DtmfBuffer::ParseEvent(timestamp, NULL, 4, &event));
-
- EXPECT_EQ(DtmfBuffer::kInvalidPointer,
- DtmfBuffer::ParseEvent(timestamp, payload_ptr, 4, NULL));
-
EXPECT_EQ(DtmfBuffer::kPayloadTooShort,
DtmfBuffer::ParseEvent(timestamp, payload_ptr, 3, &event));
}
diff --git a/webrtc/modules/audio_coding/neteq/neteq_impl.cc b/webrtc/modules/audio_coding/neteq/neteq_impl.cc
index 6598a79..3b81999 100644
--- a/webrtc/modules/audio_coding/neteq/neteq_impl.cc
+++ b/webrtc/modules/audio_coding/neteq/neteq_impl.cc
@@ -15,6 +15,7 @@
#include <algorithm>
+#include "webrtc/base/logging.h"
#include "webrtc/common_audio/signal_processing/include/signal_processing_library.h"
#include "webrtc/modules/audio_coding/codecs/audio_decoder.h"
#include "webrtc/modules/audio_coding/neteq/accelerate.h"
@@ -40,7 +41,6 @@
#include "webrtc/modules/audio_coding/neteq/timestamp_scaler.h"
#include "webrtc/modules/interface/module_common_types.h"
#include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
-#include "webrtc/system_wrappers/interface/logging.h"
// Modify the code to obtain backwards bit-exactness. Once bit-exactness is no
// longer required, this #define should be removed (and the code that it
@@ -102,7 +102,6 @@
"Changing to 8000 Hz.";
fs = 8000;
}
- LOG(LS_VERBOSE) << "Create NetEqImpl object with fs = " << fs << ".";
fs_hz_ = fs;
fs_mult_ = fs / 8000;
output_size_samples_ = kOutputSizeMs * 8 * fs_mult_;
@@ -113,9 +112,7 @@
}
}
-NetEqImpl::~NetEqImpl() {
- LOG(LS_INFO) << "Deleting NetEqImpl object.";
-}
+NetEqImpl::~NetEqImpl() = default;
int NetEqImpl::InsertPacket(const WebRtcRTPHeader& rtp_header,
const uint8_t* payload,
@@ -130,7 +127,6 @@
int error = InsertPacketInternal(rtp_header, payload, length_bytes,
receive_timestamp, false);
if (error != 0) {
- LOG_FERR1(LS_WARNING, InsertPacketInternal, error);
error_code_ = error;
return kFail;
}
@@ -151,7 +147,6 @@
rtp_header, kSyncPayload, sizeof(kSyncPayload), receive_timestamp, true);
if (error != 0) {
- LOG_FERR1(LS_WARNING, InsertPacketInternal, error);
error_code_ = error;
return kFail;
}
@@ -168,7 +163,6 @@
LOG(LS_VERBOSE) << "Produced " << *samples_per_channel <<
" samples/channel for " << *num_channels << " channel(s)";
if (error != 0) {
- LOG_FERR1(LS_WARNING, GetAudioInternal, error);
error_code_ = error;
return kFail;
}
@@ -181,11 +175,10 @@
int NetEqImpl::RegisterPayloadType(enum NetEqDecoder codec,
uint8_t rtp_payload_type) {
CriticalSectionScoped lock(crit_sect_.get());
- LOG_API2(static_cast<int>(rtp_payload_type), codec);
+ LOG(LS_VERBOSE) << "RegisterPayloadType "
+ << static_cast<int>(rtp_payload_type) << " " << codec;
int ret = decoder_database_->RegisterPayload(rtp_payload_type, codec);
if (ret != DecoderDatabase::kOK) {
- LOG_FERR2(LS_WARNING, RegisterPayload, static_cast<int>(rtp_payload_type),
- codec);
switch (ret) {
case DecoderDatabase::kInvalidRtpPayloadType:
error_code_ = kInvalidRtpPayloadType;
@@ -209,7 +202,8 @@
uint8_t rtp_payload_type,
int sample_rate_hz) {
CriticalSectionScoped lock(crit_sect_.get());
- LOG_API2(static_cast<int>(rtp_payload_type), codec);
+ LOG(LS_VERBOSE) << "RegisterExternalDecoder "
+ << static_cast<int>(rtp_payload_type) << " " << codec;
if (!decoder) {
LOG(LS_ERROR) << "Cannot register external decoder with NULL pointer";
assert(false);
@@ -218,8 +212,6 @@
int ret = decoder_database_->InsertExternal(rtp_payload_type, codec,
sample_rate_hz, decoder);
if (ret != DecoderDatabase::kOK) {
- LOG_FERR2(LS_WARNING, InsertExternal, static_cast<int>(rtp_payload_type),
- codec);
switch (ret) {
case DecoderDatabase::kInvalidRtpPayloadType:
error_code_ = kInvalidRtpPayloadType;
@@ -246,7 +238,6 @@
int NetEqImpl::RemovePayloadType(uint8_t rtp_payload_type) {
CriticalSectionScoped lock(crit_sect_.get());
- LOG_API1(static_cast<int>(rtp_payload_type));
int ret = decoder_database_->Remove(rtp_payload_type);
if (ret == DecoderDatabase::kOK) {
return kOK;
@@ -255,7 +246,6 @@
} else {
error_code_ = kOtherError;
}
- LOG_FERR1(LS_WARNING, Remove, static_cast<int>(rtp_payload_type));
return kFail;
}
@@ -389,7 +379,7 @@
void NetEqImpl::FlushBuffers() {
CriticalSectionScoped lock(crit_sect_.get());
- LOG_API0();
+ LOG(LS_VERBOSE) << "FlushBuffers";
packet_buffer_->Flush();
assert(sync_buffer_.get());
assert(expand_.get());
@@ -517,7 +507,6 @@
if (decoder_database_->IsRed(main_header.payloadType)) {
assert(!is_sync_packet); // We had a sanity check for this.
if (payload_splitter_->SplitRed(&packet_list) != PayloadSplitter::kOK) {
- LOG_FERR1(LS_WARNING, SplitRed, packet_list.size());
PacketBuffer::DeleteAllPackets(&packet_list);
return kRedundancySplitError;
}
@@ -532,7 +521,6 @@
// Check payload types.
if (decoder_database_->CheckPayloadTypes(packet_list) ==
DecoderDatabase::kDecoderNotFound) {
- LOG_FERR1(LS_WARNING, CheckPayloadTypes, packet_list.size());
PacketBuffer::DeleteAllPackets(&packet_list);
return kUnknownRtpPayloadType;
}
@@ -556,13 +544,10 @@
current_packet->payload_length,
&event);
if (ret != DtmfBuffer::kOK) {
- LOG_FERR2(LS_WARNING, ParseEvent, ret,
- current_packet->payload_length);
PacketBuffer::DeleteAllPackets(&packet_list);
return kDtmfParsingError;
}
if (dtmf_buffer_->InsertEvent(event) != DtmfBuffer::kOK) {
- LOG_FERR0(LS_WARNING, InsertEvent);
PacketBuffer::DeleteAllPackets(&packet_list);
return kDtmfInsertError;
}
@@ -578,7 +563,6 @@
// Check for FEC in packets, and separate payloads into several packets.
int ret = payload_splitter_->SplitFec(&packet_list, decoder_database_.get());
if (ret != PayloadSplitter::kOK) {
- LOG_FERR1(LS_WARNING, SplitFec, packet_list.size());
PacketBuffer::DeleteAllPackets(&packet_list);
switch (ret) {
case PayloadSplitter::kUnknownPayloadType:
@@ -593,7 +577,6 @@
// sync-packets.
ret = payload_splitter_->SplitAudio(&packet_list, *decoder_database_);
if (ret != PayloadSplitter::kOK) {
- LOG_FERR1(LS_WARNING, SplitAudio, packet_list.size());
PacketBuffer::DeleteAllPackets(&packet_list);
switch (ret) {
case PayloadSplitter::kUnknownPayloadType:
@@ -630,9 +613,7 @@
// Reset DSP timestamp etc. if packet buffer flushed.
new_codec_ = true;
update_sample_rate_and_channels = true;
- LOG_F(LS_WARNING) << "Packet buffer flushed";
} else if (ret != PacketBuffer::kOK) {
- LOG_FERR1(LS_WARNING, InsertPacketList, packet_list.size());
PacketBuffer::DeleteAllPackets(&packet_list);
return kOtherError;
}
@@ -716,7 +697,6 @@
int return_value = GetDecision(&operation, &packet_list, &dtmf_event,
&play_dtmf);
if (return_value != 0) {
- LOG_FERR1(LS_WARNING, GetDecision, return_value);
assert(false);
last_mode_ = kModeError;
return return_value;
@@ -807,7 +787,7 @@
break;
}
case kUndefined: {
- LOG_F(LS_ERROR) << "Invalid operation kUndefined.";
+ LOG(LS_ERROR) << "Invalid operation kUndefined.";
assert(false); // This should not happen.
last_mode_ = kModeError;
return kInvalidOperation;
@@ -834,15 +814,17 @@
num_output_samples_per_channel = static_cast<int>(
max_length / sync_buffer_->Channels());
}
- int samples_from_sync = static_cast<int>(
- sync_buffer_->GetNextAudioInterleaved(num_output_samples_per_channel,
- output));
+ const int samples_from_sync =
+ static_cast<int>(sync_buffer_->GetNextAudioInterleaved(
+ num_output_samples_per_channel, output));
*num_channels = static_cast<int>(sync_buffer_->Channels());
LOG(LS_VERBOSE) << "Sync buffer (" << *num_channels << " channel(s)):" <<
" insert " << algorithm_buffer_->Size() << " samples, extract " <<
samples_from_sync << " samples";
if (samples_from_sync != output_size_samples_) {
- LOG_F(LS_ERROR) << "samples_from_sync != output_size_samples_";
+ LOG(LS_ERROR) << "samples_from_sync (" << samples_from_sync
+ << ") != output_size_samples_ (" << output_size_samples_
+ << ")";
// TODO(minyue): treatment of under-run, filling zeros
memset(output, 0, num_output_samples * sizeof(int16_t));
*samples_per_channel = output_size_samples_;
@@ -983,7 +965,7 @@
} else {
assert(header);
if (!header) {
- LOG_F(LS_ERROR) << "Packet missing where it shouldn't.";
+ LOG(LS_ERROR) << "Packet missing where it shouldn't.";
return -1;
}
timestamp_ = header->timestamp;
@@ -1129,7 +1111,6 @@
extracted_samples = ExtractPackets(required_samples, packet_list);
if (extracted_samples < 0) {
- LOG_F(LS_WARNING) << "Failed to extract packets from buffer.";
return kPacketBufferCorruption;
}
}
@@ -1165,7 +1146,8 @@
decoder = decoder_database_->GetDecoder(payload_type);
assert(decoder);
if (!decoder) {
- LOG_FERR1(LS_WARNING, GetDecoder, static_cast<int>(payload_type));
+ LOG(LS_WARNING) << "Unknown payload type "
+ << static_cast<int>(payload_type);
PacketBuffer::DeleteAllPackets(packet_list);
return kDecoderNotFound;
}
@@ -1177,7 +1159,8 @@
->GetDecoderInfo(payload_type);
assert(decoder_info);
if (!decoder_info) {
- LOG_FERR1(LS_WARNING, GetDecoderInfo, static_cast<int>(payload_type));
+ LOG(LS_WARNING) << "Unknown payload type "
+ << static_cast<int>(payload_type);
PacketBuffer::DeleteAllPackets(packet_list);
return kDecoderNotFound;
}
@@ -1239,11 +1222,12 @@
// Got some error code from the decoder.
decoder_error_code_ = error_code;
return_value = kDecoderErrorCode;
+ LOG(LS_WARNING) << "Decoder returned error code: " << error_code;
} else {
// Decoder does not implement error codes. Return generic error.
return_value = kOtherDecoderError;
+ LOG(LS_WARNING) << "Decoder error (no error code)";
}
- LOG_FERR2(LS_WARNING, DecodeLoop, error_code, packet_list->size());
*operation = kExpand; // Do expansion to get data instead.
}
if (*speech_type != AudioDecoder::kComfortNoise) {
@@ -1329,14 +1313,14 @@
<< decoder_frame_length_ << " samples per channel)";
} else if (decode_length < 0) {
// Error.
- LOG_FERR2(LS_WARNING, Decode, decode_length, payload_length);
+ LOG(LS_WARNING) << "Decode " << decode_length << " " << payload_length;
*decoded_length = -1;
PacketBuffer::DeleteAllPackets(packet_list);
break;
}
if (*decoded_length > static_cast<int>(decoded_buffer_length_)) {
// Guard against overflow.
- LOG_F(LS_WARNING) << "Decoded too much.";
+ LOG(LS_WARNING) << "Decoded too much.";
PacketBuffer::DeleteAllPackets(packet_list);
return kDecodedTooMuch;
}
@@ -1614,7 +1598,6 @@
// UpdateParameters() deletes |packet|.
if (comfort_noise_->UpdateParameters(packet) ==
ComfortNoise::kInternalError) {
- LOG_FERR0(LS_WARNING, UpdateParameters);
algorithm_buffer_->Zeros(output_size_samples_);
return -comfort_noise_->internal_error_code();
}
@@ -1627,11 +1610,9 @@
dtmf_tone_generator_->Reset();
}
if (cn_return == ComfortNoise::kInternalError) {
- LOG_FERR1(LS_WARNING, comfort_noise_->Generate, cn_return);
decoder_error_code_ = comfort_noise_->internal_error_code();
return kComfortNoiseErrorCode;
} else if (cn_return == ComfortNoise::kUnknownPayloadType) {
- LOG_FERR1(LS_WARNING, comfort_noise_->Generate, cn_return);
return kUnknownRtpPayloadType;
}
return 0;
@@ -1800,6 +1781,7 @@
const RTPHeader* header = packet_buffer_->NextRtpHeader();
assert(header);
if (!header) {
+ LOG(LS_ERROR) << "Packet buffer unexpectedly empty.";
return -1;
}
uint32_t first_timestamp = header->timestamp;
@@ -1813,8 +1795,7 @@
// |header| may be invalid after the |packet_buffer_| operation.
header = NULL;
if (!packet) {
- LOG_FERR1(LS_ERROR, GetNextPacket, discard_count) <<
- "Should always be able to extract a packet here";
+ LOG(LS_ERROR) << "Should always be able to extract a packet here";
assert(false); // Should always be able to extract a packet here.
return -1;
}
@@ -1850,9 +1831,8 @@
}
}
} else {
- LOG_FERR1(LS_WARNING, GetDecoder,
- static_cast<int>(packet->header.payloadType))
- << "Could not find a decoder for a packet about to be extracted.";
+ LOG(LS_WARNING) << "Unknown payload type "
+ << static_cast<int>(packet->header.payloadType);
assert(false);
}
if (packet_duration <= 0) {
@@ -1899,7 +1879,7 @@
}
void NetEqImpl::SetSampleRateAndChannels(int fs_hz, size_t channels) {
- LOG_API2(fs_hz, channels);
+ LOG(LS_VERBOSE) << "SetSampleRateAndChannels " << fs_hz << " " << channels;
// TODO(hlundin): Change to an enumerator and skip assert.
assert(fs_hz == 8000 || fs_hz == 16000 || fs_hz == 32000 || fs_hz == 48000);
assert(channels > 0);
diff --git a/webrtc/modules/audio_coding/neteq/packet_buffer.cc b/webrtc/modules/audio_coding/neteq/packet_buffer.cc
index 07fa339..431e0f1 100644
--- a/webrtc/modules/audio_coding/neteq/packet_buffer.cc
+++ b/webrtc/modules/audio_coding/neteq/packet_buffer.cc
@@ -16,6 +16,7 @@
#include <algorithm> // find_if()
+#include "webrtc/base/logging.h"
#include "webrtc/modules/audio_coding/codecs/audio_decoder.h"
#include "webrtc/modules/audio_coding/neteq/decoder_database.h"
@@ -58,6 +59,7 @@
if (packet) {
delete packet;
}
+ LOG(LS_WARNING) << "InsertPacket invalid packet";
return kInvalidPacket;
}
@@ -66,6 +68,7 @@
if (buffer_.size() >= max_number_of_packets_) {
// Buffer is full. Flush it.
Flush();
+ LOG(LS_WARNING) << "Packet buffer flushed";
return_val = kFlushed;
}
diff --git a/webrtc/modules/audio_coding/neteq/payload_splitter.cc b/webrtc/modules/audio_coding/neteq/payload_splitter.cc
index c19375b..2172eee 100644
--- a/webrtc/modules/audio_coding/neteq/payload_splitter.cc
+++ b/webrtc/modules/audio_coding/neteq/payload_splitter.cc
@@ -12,6 +12,7 @@
#include <assert.h>
+#include "webrtc/base/logging.h"
#include "webrtc/modules/audio_coding/neteq/decoder_database.h"
namespace webrtc {
@@ -88,6 +89,7 @@
// The block lengths in the RED headers do not match the overall packet
// length. Something is corrupt. Discard this and the remaining
// payloads from this packet.
+ LOG(LS_WARNING) << "SplitRed length mismatch";
while (new_it != new_packets.end()) {
// Payload should not have been allocated yet.
assert(!(*new_it)->payload);
@@ -130,6 +132,7 @@
const DecoderDatabase::DecoderInfo* info =
decoder_database->GetDecoderInfo(payload_type);
if (!info) {
+ LOG(LS_WARNING) << "SplitFec unknown payload type";
return kUnknownPayloadType;
}
// No splitting for a sync-packet.
@@ -171,6 +174,7 @@
break;
}
default: {
+ LOG(LS_WARNING) << "SplitFec wrong payload type";
return kFecSplitError;
}
}
@@ -222,6 +226,7 @@
const DecoderDatabase::DecoderInfo* info =
decoder_database.GetDecoderInfo(packet->header.payloadType);
if (!info) {
+ LOG(LS_WARNING) << "SplitAudio unknown payload type";
return kUnknownPayloadType;
}
// No splitting for a sync-packet.
@@ -297,6 +302,7 @@
size_t bytes_per_frame;
int timestamps_per_frame;
if (packet->payload_length >= 950) {
+ LOG(LS_WARNING) << "SplitAudio too large iLBC payload";
return kTooLargePayload;
}
if (packet->payload_length % 38 == 0) {
@@ -308,6 +314,7 @@
bytes_per_frame = 50;
timestamps_per_frame = 240;
} else {
+ LOG(LS_WARNING) << "SplitAudio invalid iLBC payload";
return kFrameSplitError;
}
int ret = SplitByFrames(packet, bytes_per_frame, timestamps_per_frame,
@@ -402,6 +409,7 @@
uint32_t timestamps_per_frame,
PacketList* new_packets) {
if (packet->payload_length % bytes_per_frame != 0) {
+ LOG(LS_WARNING) << "SplitByFrames length mismatch";
return kFrameSplitError;
}