diff --git a/webrtc/modules/audio_coding/BUILD.gn b/webrtc/modules/audio_coding/BUILD.gn index 0313b2b03c..2925e0871f 100644 --- a/webrtc/modules/audio_coding/BUILD.gn +++ b/webrtc/modules/audio_coding/BUILD.gn @@ -898,11 +898,6 @@ if (rtc_include_tests) { configs += [ "../..:common_config" ] public_configs = [ "../..:common_inherited_config" ] - if (is_clang) { - # Suppress warnings from the Chromium Clang plugins (bugs.webrtc.org/163). - configs -= [ "//build/config/clang:find_bad_constructs" ] - } - defines = audio_coding_defines deps = audio_coding_deps + [ @@ -1209,6 +1204,7 @@ if (rtc_include_tests) { "neteq/tools/output_wav_file.h", "neteq/tools/packet.cc", "neteq/tools/packet.h", + "neteq/tools/packet_source.cc", "neteq/tools/packet_source.h", "neteq/tools/resample_input_audio_file.cc", "neteq/tools/resample_input_audio_file.h", diff --git a/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.cc b/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.cc index 025a0e9615..aac5e1678c 100644 --- a/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.cc +++ b/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.cc @@ -112,6 +112,8 @@ AcmReceiveTestOldApi::AcmReceiveTestOldApi( exptected_output_channels_(exptected_output_channels) { } +AcmReceiveTestOldApi::~AcmReceiveTestOldApi() = default; + void AcmReceiveTestOldApi::RegisterDefaultCodecs() { CodecInst my_codec_param; for (int n = 0; n < acm_->NumberOfCodecs(); n++) { diff --git a/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.h b/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.h index 69526414ac..5d6fbb3cef 100644 --- a/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.h +++ b/webrtc/modules/audio_coding/acm2/acm_receive_test_oldapi.h @@ -38,7 +38,7 @@ class AcmReceiveTestOldApi { AudioSink* audio_sink, int output_freq_hz, NumOutputChannels exptected_output_channels); - virtual ~AcmReceiveTestOldApi() {} + virtual ~AcmReceiveTestOldApi(); // Registers the codecs with default parameters from ACM. void RegisterDefaultCodecs(); diff --git a/webrtc/modules/audio_coding/neteq/neteq.gypi b/webrtc/modules/audio_coding/neteq/neteq.gypi index f43a261efa..d9c152e184 100644 --- a/webrtc/modules/audio_coding/neteq/neteq.gypi +++ b/webrtc/modules/audio_coding/neteq/neteq.gypi @@ -246,6 +246,7 @@ 'tools/output_wav_file.h', 'tools/packet.cc', 'tools/packet.h', + 'tools/packet_source.cc', 'tools/packet_source.h', 'tools/resample_input_audio_file.cc', 'tools/resample_input_audio_file.h', diff --git a/webrtc/modules/audio_coding/neteq/tools/packet.cc b/webrtc/modules/audio_coding/neteq/tools/packet.cc index a31d080146..0ed1be1b02 100644 --- a/webrtc/modules/audio_coding/neteq/tools/packet.cc +++ b/webrtc/modules/audio_coding/neteq/tools/packet.cc @@ -77,6 +77,8 @@ Packet::Packet(uint8_t* packet_memory, valid_header_ = ParseHeader(*parser); } +Packet::~Packet() = default; + bool Packet::ExtractRedHeaders(std::list* headers) const { // // 0 1 2 3 diff --git a/webrtc/modules/audio_coding/neteq/tools/packet.h b/webrtc/modules/audio_coding/neteq/tools/packet.h index 86eedc0ce6..d150805579 100644 --- a/webrtc/modules/audio_coding/neteq/tools/packet.h +++ b/webrtc/modules/audio_coding/neteq/tools/packet.h @@ -62,7 +62,7 @@ class Packet { size_t virtual_packet_length_bytes, double time_ms); - virtual ~Packet() {} + virtual ~Packet(); // Parses the first bytes of the RTP payload, interpreting them as RED headers // according to RFC 2198. The headers will be inserted into |headers|. The diff --git a/webrtc/modules/audio_coding/neteq/tools/packet_source.cc b/webrtc/modules/audio_coding/neteq/tools/packet_source.cc new file mode 100644 index 0000000000..d6cb37ef39 --- /dev/null +++ b/webrtc/modules/audio_coding/neteq/tools/packet_source.cc @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. An additional intellectual property rights grant can be found + * in the file PATENTS. All contributing project authors may + * be found in the AUTHORS file in the root of the source tree. + */ + +#include "webrtc/modules/audio_coding/neteq/tools/packet_source.h" + +namespace webrtc { +namespace test { + +PacketSource::PacketSource() : use_ssrc_filter_(false), ssrc_(0) {} + +PacketSource::~PacketSource() = default; + +void PacketSource::FilterOutPayloadType(uint8_t payload_type) { + filter_.set(payload_type, true); +} + +void PacketSource::SelectSsrc(uint32_t ssrc) { + use_ssrc_filter_ = true; + ssrc_ = ssrc; +} + +} // namespace test +} // namespace webrtc diff --git a/webrtc/modules/audio_coding/neteq/tools/packet_source.h b/webrtc/modules/audio_coding/neteq/tools/packet_source.h index 3ec576d5c5..caae4ae790 100644 --- a/webrtc/modules/audio_coding/neteq/tools/packet_source.h +++ b/webrtc/modules/audio_coding/neteq/tools/packet_source.h @@ -24,21 +24,16 @@ namespace test { // Interface class for an object delivering RTP packets to test applications. class PacketSource { public: - PacketSource() : use_ssrc_filter_(false), ssrc_(0) {} - virtual ~PacketSource() {} + PacketSource(); + virtual ~PacketSource(); // Returns next packet. Returns nullptr if the source is depleted, or if an // error occurred. virtual std::unique_ptr NextPacket() = 0; - virtual void FilterOutPayloadType(uint8_t payload_type) { - filter_.set(payload_type, true); - } + virtual void FilterOutPayloadType(uint8_t payload_type); - virtual void SelectSsrc(uint32_t ssrc) { - use_ssrc_filter_ = true; - ssrc_ = ssrc; - } + virtual void SelectSsrc(uint32_t ssrc); protected: std::bitset<128> filter_; // Payload type is 7 bits in the RFC.