From 47658f12691138c464eddac1ad32cbc98b8de5a8 Mon Sep 17 00:00:00 2001 From: "henrike@webrtc.org" Date: Wed, 10 Sep 2014 22:14:59 +0000 Subject: [PATCH] Mark all virtual overrides in the hierarchy of AudioPacketizationCallback, RTPStream, and NetEq as such. Also mark all other virtual overrides in the same files. This will make further changes to these classes safer by ensuring that the compile breaks if the base class changes and not all overrides are fixed. This also deletes ACMTest.cc, which existed solely to define ~ACMTest(), which was marked pure virtual in the header. (Pure virtual destructors still need a definition.) Because there is another pure virtual method in this class, the class is already abstract, so there's no benefit to making the desturctor pure. Making it non-pure allows removing the separate source file. BUG=none TEST=none R=henrik.lundin@webrtc.org, niklas.enbom@webrtc.org Review URL: https://webrtc-codereview.appspot.com/29389004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7144 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../main/acm2/acm_receiver_unittest.cc | 6 +- .../audio_coding/main/acm2/acm_send_test.h | 2 +- .../main/acm2/audio_coding_module_unittest.cc | 22 +++---- .../modules/audio_coding/main/test/ACMTest.cc | 13 ---- .../modules/audio_coding/main/test/ACMTest.h | 2 +- .../modules/audio_coding/main/test/Channel.h | 9 +-- .../audio_coding/main/test/EncodeDecodeTest.h | 11 ++-- .../modules/audio_coding/main/test/RTPFile.h | 24 ++++---- .../audio_coding/main/test/TestAllCodecs.h | 11 ++-- .../audio_coding/main/test/TestStereo.h | 15 ++--- .../main/test/dual_stream_unittest.cc | 9 +-- .../modules/audio_coding/neteq/neteq_impl.h | 59 ++++++++++--------- webrtc/modules/modules.gyp | 1 - webrtc/modules/utility/source/coder.h | 17 +++--- 14 files changed, 97 insertions(+), 104 deletions(-) delete mode 100644 webrtc/modules/audio_coding/main/test/ACMTest.cc diff --git a/webrtc/modules/audio_coding/main/acm2/acm_receiver_unittest.cc b/webrtc/modules/audio_coding/main/acm2/acm_receiver_unittest.cc index b2ff3bcf4..94d51b770 100644 --- a/webrtc/modules/audio_coding/main/acm2/acm_receiver_unittest.cc +++ b/webrtc/modules/audio_coding/main/acm2/acm_receiver_unittest.cc @@ -54,7 +54,7 @@ class AcmReceiverTest : public AudioPacketizationCallback, ~AcmReceiverTest() {} - void SetUp() { + virtual void SetUp() OVERRIDE { ASSERT_TRUE(receiver_.get() != NULL); ASSERT_TRUE(acm_.get() != NULL); for (int n = 0; n < ACMCodecDB::kNumCodecs; n++) { @@ -75,7 +75,7 @@ class AcmReceiverTest : public AudioPacketizationCallback, rtp_header_.type.Audio.isCNG = false; } - void TearDown() { + virtual void TearDown() OVERRIDE { } void InsertOnePacketOfSilence(int codec_id) { @@ -125,7 +125,7 @@ class AcmReceiverTest : public AudioPacketizationCallback, uint32_t timestamp, const uint8_t* payload_data, uint16_t payload_len_bytes, - const RTPFragmentationHeader* fragmentation) { + const RTPFragmentationHeader* fragmentation) OVERRIDE { if (frame_type == kFrameEmpty) return 0; diff --git a/webrtc/modules/audio_coding/main/acm2/acm_send_test.h b/webrtc/modules/audio_coding/main/acm2/acm_send_test.h index 5e9bd977d..db5d9e551 100644 --- a/webrtc/modules/audio_coding/main/acm2/acm_send_test.h +++ b/webrtc/modules/audio_coding/main/acm2/acm_send_test.h @@ -42,7 +42,7 @@ class AcmSendTest : public AudioPacketizationCallback, public PacketSource { // Returns the next encoded packet. Returns NULL if the test duration was // exceeded. Ownership of the packet is handed over to the caller. // Inherited from PacketSource. - Packet* NextPacket(); + virtual Packet* NextPacket() OVERRIDE; // Inherited from AudioPacketizationCallback. virtual int32_t SendData( diff --git a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_unittest.cc b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_unittest.cc index 621f183d9..009218d19 100644 --- a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_unittest.cc +++ b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_unittest.cc @@ -124,9 +124,9 @@ class AudioCodingModuleTest : public ::testing::Test { ~AudioCodingModuleTest() {} - void TearDown() {} + void TearDown() OVERRIDE {} - void SetUp() { + void SetUp() OVERRIDE { acm_.reset(AudioCodingModule::Create(id_, clock_)); RegisterCodec(); @@ -309,7 +309,7 @@ class AudioCodingModuleMtTest : public AudioCodingModuleTest { clock_ = fake_clock_.get(); } - void SetUp() { + virtual void SetUp() OVERRIDE { AudioCodingModuleTest::SetUp(); StartThreads(); } @@ -321,7 +321,7 @@ class AudioCodingModuleMtTest : public AudioCodingModuleTest { ASSERT_TRUE(pull_audio_thread_->Start(thread_id)); } - void TearDown() { + virtual void TearDown() OVERRIDE { AudioCodingModuleTest::TearDown(); pull_audio_thread_->Stop(); send_thread_->Stop(); @@ -437,7 +437,7 @@ class AcmIsacMtTest : public AudioCodingModuleMtTest { ~AcmIsacMtTest() {} - void SetUp() { + virtual void SetUp() OVERRIDE { AudioCodingModuleTest::SetUp(); // Set up input audio source to read from specified file, loop after 5 @@ -460,7 +460,7 @@ class AcmIsacMtTest : public AudioCodingModuleMtTest { StartThreads(); } - virtual void RegisterCodec() { + virtual void RegisterCodec() OVERRIDE { COMPILE_ASSERT(kSampleRateHz == 16000, test_designed_for_isac_16khz); AudioCodingModule::Codec("ISAC", &codec_, kSampleRateHz, 1); codec_.pltype = kPayloadType; @@ -471,7 +471,7 @@ class AcmIsacMtTest : public AudioCodingModuleMtTest { ASSERT_EQ(0, acm_->RegisterSendCodec(codec_)); } - void InsertPacket() { + virtual void InsertPacket() OVERRIDE { int num_calls = packet_cb_.num_calls(); // Store locally for thread safety. if (num_calls > last_packet_number_) { // Get the new payload out from the callback handler. @@ -490,16 +490,16 @@ class AcmIsacMtTest : public AudioCodingModuleMtTest { &last_payload_vec_[0], last_payload_vec_.size(), rtp_header_)); } - void InsertAudio() { + virtual void InsertAudio() OVERRIDE { memcpy(input_frame_.data_, audio_loop_.GetNextBlock(), kNumSamples10ms); AudioCodingModuleTest::InsertAudio(); } - void Encode() { ASSERT_GE(acm_->Process(), 0); } + virtual void Encode() OVERRIDE { ASSERT_GE(acm_->Process(), 0); } // This method is the same as AudioCodingModuleMtTest::TestDone(), but here // it is using the constants defined in this class (i.e., shorter test run). - virtual bool TestDone() { + virtual bool TestDone() OVERRIDE { if (packet_cb_.num_calls() > kNumPackets) { CriticalSectionScoped lock(crit_sect_.get()); if (pull_audio_count_ > kNumPullCalls) { @@ -694,7 +694,7 @@ class AcmSenderBitExactness : public ::testing::Test, // Returns a pointer to the next packet. Returns NULL if the source is // depleted (i.e., the test duration is exceeded), or if an error occurred. // Inherited from test::PacketSource. - test::Packet* NextPacket() OVERRIDE { + virtual test::Packet* NextPacket() OVERRIDE { // Get the next packet from AcmSendTest. Ownership of |packet| is // transferred to this method. test::Packet* packet = send_test_->NextPacket(); diff --git a/webrtc/modules/audio_coding/main/test/ACMTest.cc b/webrtc/modules/audio_coding/main/test/ACMTest.cc deleted file mode 100644 index dbbdade80..000000000 --- a/webrtc/modules/audio_coding/main/test/ACMTest.cc +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright (c) 2011 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 "ACMTest.h" - -ACMTest::~ACMTest() {} diff --git a/webrtc/modules/audio_coding/main/test/ACMTest.h b/webrtc/modules/audio_coding/main/test/ACMTest.h index 767add171..f73961f5e 100644 --- a/webrtc/modules/audio_coding/main/test/ACMTest.h +++ b/webrtc/modules/audio_coding/main/test/ACMTest.h @@ -14,7 +14,7 @@ class ACMTest { public: ACMTest() {} - virtual ~ACMTest() = 0; + virtual ~ACMTest() {} virtual void Perform() = 0; }; diff --git a/webrtc/modules/audio_coding/main/test/Channel.h b/webrtc/modules/audio_coding/main/test/Channel.h index 7611c9d6e..cdb99c03e 100644 --- a/webrtc/modules/audio_coding/main/test/Channel.h +++ b/webrtc/modules/audio_coding/main/test/Channel.h @@ -50,10 +50,11 @@ class Channel : public AudioPacketizationCallback { Channel(int16_t chID = -1); ~Channel(); - int32_t SendData(const FrameType frameType, const uint8_t payloadType, - const uint32_t timeStamp, const uint8_t* payloadData, - const uint16_t payloadSize, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + const FrameType frameType, const uint8_t payloadType, + const uint32_t timeStamp, const uint8_t* payloadData, + const uint16_t payloadSize, + const RTPFragmentationHeader* fragmentation) OVERRIDE; void RegisterReceiverACM(AudioCodingModule *acm); diff --git a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h index dbe3f0cb3..693c96e01 100644 --- a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h +++ b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h @@ -29,10 +29,11 @@ class TestPacketization : public AudioPacketizationCallback { public: TestPacketization(RTPStream *rtpStream, uint16_t frequency); ~TestPacketization(); - virtual int32_t SendData(const FrameType frameType, const uint8_t payloadType, - const uint32_t timeStamp, const uint8_t* payloadData, - const uint16_t payloadSize, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + const FrameType frameType, const uint8_t payloadType, + const uint32_t timeStamp, const uint8_t* payloadData, + const uint16_t payloadSize, + const RTPFragmentationHeader* fragmentation) OVERRIDE; private: static void MakeRTPheader(uint8_t* rtpHeader, uint8_t payloadType, @@ -100,7 +101,7 @@ class EncodeDecodeTest : public ACMTest { public: EncodeDecodeTest(); explicit EncodeDecodeTest(int testMode); - virtual void Perform(); + virtual void Perform() OVERRIDE; uint16_t _playoutFreq; uint8_t _testMode; diff --git a/webrtc/modules/audio_coding/main/test/RTPFile.h b/webrtc/modules/audio_coding/main/test/RTPFile.h index 9b6d5fcaf..460553beb 100644 --- a/webrtc/modules/audio_coding/main/test/RTPFile.h +++ b/webrtc/modules/audio_coding/main/test/RTPFile.h @@ -65,14 +65,14 @@ class RTPBuffer : public RTPStream { ~RTPBuffer(); - void Write(const uint8_t payloadType, const uint32_t timeStamp, - const int16_t seqNo, const uint8_t* payloadData, - const uint16_t payloadSize, uint32_t frequency); + virtual void Write(const uint8_t payloadType, const uint32_t timeStamp, + const int16_t seqNo, const uint8_t* payloadData, + const uint16_t payloadSize, uint32_t frequency) OVERRIDE; - uint16_t Read(WebRtcRTPHeader* rtpInfo, uint8_t* payloadData, - uint16_t payloadSize, uint32_t* offset); + virtual uint16_t Read(WebRtcRTPHeader* rtpInfo, uint8_t* payloadData, + uint16_t payloadSize, uint32_t* offset) OVERRIDE; - virtual bool EndOfFile() const; + virtual bool EndOfFile() const OVERRIDE; private: RWLockWrapper* _queueRWLock; @@ -97,14 +97,14 @@ class RTPFile : public RTPStream { void ReadHeader(); - void Write(const uint8_t payloadType, const uint32_t timeStamp, - const int16_t seqNo, const uint8_t* payloadData, - const uint16_t payloadSize, uint32_t frequency); + virtual void Write(const uint8_t payloadType, const uint32_t timeStamp, + const int16_t seqNo, const uint8_t* payloadData, + const uint16_t payloadSize, uint32_t frequency) OVERRIDE; - uint16_t Read(WebRtcRTPHeader* rtpInfo, uint8_t* payloadData, - uint16_t payloadSize, uint32_t* offset); + virtual uint16_t Read(WebRtcRTPHeader* rtpInfo, uint8_t* payloadData, + uint16_t payloadSize, uint32_t* offset) OVERRIDE; - bool EndOfFile() const { + virtual bool EndOfFile() const OVERRIDE { return _rtpEOF; } diff --git a/webrtc/modules/audio_coding/main/test/TestAllCodecs.h b/webrtc/modules/audio_coding/main/test/TestAllCodecs.h index 73eac47f2..2fbf9ef0f 100644 --- a/webrtc/modules/audio_coding/main/test/TestAllCodecs.h +++ b/webrtc/modules/audio_coding/main/test/TestAllCodecs.h @@ -28,10 +28,11 @@ class TestPack : public AudioPacketizationCallback { void RegisterReceiverACM(AudioCodingModule* acm); - int32_t SendData(FrameType frame_type, uint8_t payload_type, - uint32_t timestamp, const uint8_t* payload_data, - uint16_t payload_size, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + FrameType frame_type, uint8_t payload_type, + uint32_t timestamp, const uint8_t* payload_data, + uint16_t payload_size, + const RTPFragmentationHeader* fragmentation) OVERRIDE; uint16_t payload_size(); uint32_t timestamp_diff(); @@ -52,7 +53,7 @@ class TestAllCodecs : public ACMTest { explicit TestAllCodecs(int test_mode); ~TestAllCodecs(); - void Perform(); + virtual void Perform() OVERRIDE; private: // The default value of '-1' indicates that the registration is based only on diff --git a/webrtc/modules/audio_coding/main/test/TestStereo.h b/webrtc/modules/audio_coding/main/test/TestStereo.h index 9cb70e916..8aefa7fc4 100644 --- a/webrtc/modules/audio_coding/main/test/TestStereo.h +++ b/webrtc/modules/audio_coding/main/test/TestStereo.h @@ -33,12 +33,13 @@ class TestPackStereo : public AudioPacketizationCallback { void RegisterReceiverACM(AudioCodingModule* acm); - virtual int32_t SendData(const FrameType frame_type, - const uint8_t payload_type, - const uint32_t timestamp, - const uint8_t* payload_data, - const uint16_t payload_size, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + const FrameType frame_type, + const uint8_t payload_type, + const uint32_t timestamp, + const uint8_t* payload_data, + const uint16_t payload_size, + const RTPFragmentationHeader* fragmentation) OVERRIDE; uint16_t payload_size(); uint32_t timestamp_diff(); @@ -63,7 +64,7 @@ class TestStereo : public ACMTest { explicit TestStereo(int test_mode); ~TestStereo(); - void Perform(); + virtual void Perform() OVERRIDE; private: // The default value of '-1' indicates that the registration is based only on // codec name and a sampling frequncy matching is not required. This is useful diff --git a/webrtc/modules/audio_coding/main/test/dual_stream_unittest.cc b/webrtc/modules/audio_coding/main/test/dual_stream_unittest.cc index ecd1e79d9..7cd2466f6 100644 --- a/webrtc/modules/audio_coding/main/test/dual_stream_unittest.cc +++ b/webrtc/modules/audio_coding/main/test/dual_stream_unittest.cc @@ -35,10 +35,11 @@ class DualStreamTest : public AudioPacketizationCallback, void ApiTest(); - int32_t SendData(FrameType frameType, uint8_t payload_type, - uint32_t timestamp, const uint8_t* payload_data, - uint16_t payload_size, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + FrameType frameType, uint8_t payload_type, + uint32_t timestamp, const uint8_t* payload_data, + uint16_t payload_size, + const RTPFragmentationHeader* fragmentation) OVERRIDE; void Perform(bool start_in_sync, int num_channels_input); diff --git a/webrtc/modules/audio_coding/neteq/neteq_impl.h b/webrtc/modules/audio_coding/neteq/neteq_impl.h index bc7734b46..d3dff185a 100644 --- a/webrtc/modules/audio_coding/neteq/neteq_impl.h +++ b/webrtc/modules/audio_coding/neteq/neteq_impl.h @@ -82,7 +82,7 @@ class NetEqImpl : public webrtc::NetEq { virtual int InsertPacket(const WebRtcRTPHeader& rtp_header, const uint8_t* payload, int length_bytes, - uint32_t receive_timestamp); + uint32_t receive_timestamp) OVERRIDE; // Inserts a sync-packet into packet queue. Sync-packets are decoded to // silence and are intended to keep AV-sync intact in an event of long packet @@ -94,7 +94,7 @@ class NetEqImpl : public webrtc::NetEq { // can be implied by inserting a sync-packet. // Returns kOk on success, kFail on failure. virtual int InsertSyncPacket(const WebRtcRTPHeader& rtp_header, - uint32_t receive_timestamp); + uint32_t receive_timestamp) OVERRIDE; // Instructs NetEq to deliver 10 ms of audio data. The data is written to // |output_audio|, which can hold (at least) |max_length| elements. @@ -106,12 +106,12 @@ class NetEqImpl : public webrtc::NetEq { // Returns kOK on success, or kFail in case of an error. virtual int GetAudio(size_t max_length, int16_t* output_audio, int* samples_per_channel, int* num_channels, - NetEqOutputType* type); + NetEqOutputType* type) OVERRIDE; // Associates |rtp_payload_type| with |codec| and stores the information in // the codec database. Returns kOK on success, kFail on failure. virtual int RegisterPayloadType(enum NetEqDecoder codec, - uint8_t rtp_payload_type); + uint8_t rtp_payload_type) OVERRIDE; // Provides an externally created decoder object |decoder| to insert in the // decoder database. The decoder implements a decoder of type |codec| and @@ -119,80 +119,81 @@ class NetEqImpl : public webrtc::NetEq { // failure. virtual int RegisterExternalDecoder(AudioDecoder* decoder, enum NetEqDecoder codec, - uint8_t rtp_payload_type); + uint8_t rtp_payload_type) OVERRIDE; // Removes |rtp_payload_type| from the codec database. Returns 0 on success, // -1 on failure. - virtual int RemovePayloadType(uint8_t rtp_payload_type); + virtual int RemovePayloadType(uint8_t rtp_payload_type) OVERRIDE; - virtual bool SetMinimumDelay(int delay_ms); + virtual bool SetMinimumDelay(int delay_ms) OVERRIDE; - virtual bool SetMaximumDelay(int delay_ms); + virtual bool SetMaximumDelay(int delay_ms) OVERRIDE; - virtual int LeastRequiredDelayMs() const; + virtual int LeastRequiredDelayMs() const OVERRIDE; - virtual int SetTargetDelay() { return kNotImplemented; } + virtual int SetTargetDelay() OVERRIDE { return kNotImplemented; } - virtual int TargetDelay() { return kNotImplemented; } + virtual int TargetDelay() OVERRIDE { return kNotImplemented; } - virtual int CurrentDelay() { return kNotImplemented; } + virtual int CurrentDelay() OVERRIDE { return kNotImplemented; } // Sets the playout mode to |mode|. - virtual void SetPlayoutMode(NetEqPlayoutMode mode); + virtual void SetPlayoutMode(NetEqPlayoutMode mode) OVERRIDE; // Returns the current playout mode. - virtual NetEqPlayoutMode PlayoutMode() const; + virtual NetEqPlayoutMode PlayoutMode() const OVERRIDE; // Writes the current network statistics to |stats|. The statistics are reset // after the call. - virtual int NetworkStatistics(NetEqNetworkStatistics* stats); + virtual int NetworkStatistics(NetEqNetworkStatistics* stats) OVERRIDE; // Writes the last packet waiting times (in ms) to |waiting_times|. The number // of values written is no more than 100, but may be smaller if the interface // is polled again before 100 packets has arrived. - virtual void WaitingTimes(std::vector* waiting_times); + virtual void WaitingTimes(std::vector* waiting_times) OVERRIDE; // Writes the current RTCP statistics to |stats|. The statistics are reset // and a new report period is started with the call. - virtual void GetRtcpStatistics(RtcpStatistics* stats); + virtual void GetRtcpStatistics(RtcpStatistics* stats) OVERRIDE; // Same as RtcpStatistics(), but does not reset anything. - virtual void GetRtcpStatisticsNoReset(RtcpStatistics* stats); + virtual void GetRtcpStatisticsNoReset(RtcpStatistics* stats) OVERRIDE; // Enables post-decode VAD. When enabled, GetAudio() will return // kOutputVADPassive when the signal contains no speech. - virtual void EnableVad(); + virtual void EnableVad() OVERRIDE; // Disables post-decode VAD. - virtual void DisableVad(); + virtual void DisableVad() OVERRIDE; - virtual bool GetPlayoutTimestamp(uint32_t* timestamp); + virtual bool GetPlayoutTimestamp(uint32_t* timestamp) OVERRIDE; - virtual int SetTargetNumberOfChannels() { return kNotImplemented; } + virtual int SetTargetNumberOfChannels() OVERRIDE { return kNotImplemented; } - virtual int SetTargetSampleRate() { return kNotImplemented; } + virtual int SetTargetSampleRate() OVERRIDE { return kNotImplemented; } // Returns the error code for the last occurred error. If no error has // occurred, 0 is returned. - virtual int LastError(); + virtual int LastError() OVERRIDE; // Returns the error code last returned by a decoder (audio or comfort noise). // When LastError() returns kDecoderErrorCode or kComfortNoiseErrorCode, check // this method to get the decoder's error code. - virtual int LastDecoderError(); + virtual int LastDecoderError() OVERRIDE; // Flushes both the packet buffer and the sync buffer. - virtual void FlushBuffers(); + virtual void FlushBuffers() OVERRIDE; virtual void PacketBufferStatistics(int* current_num_packets, - int* max_num_packets) const; + int* max_num_packets) const OVERRIDE; // Get sequence number and timestamp of the latest RTP. // This method is to facilitate NACK. - virtual int DecodedRtpInfo(int* sequence_number, uint32_t* timestamp) const; + virtual int DecodedRtpInfo(int* sequence_number, + uint32_t* timestamp) const OVERRIDE; // This accessor method is only intended for testing purposes. - virtual const SyncBuffer* sync_buffer_for_test() const; + const SyncBuffer* sync_buffer_for_test() const; protected: static const int kOutputSizeMs = 10; diff --git a/webrtc/modules/modules.gyp b/webrtc/modules/modules.gyp index 8ea307962..a1a1bf0de 100644 --- a/webrtc/modules/modules.gyp +++ b/webrtc/modules/modules.gyp @@ -329,7 +329,6 @@ '<@(audio_coding_defines)', ], 'sources': [ - 'audio_coding/main/test/ACMTest.cc', 'audio_coding/main/test/APITest.cc', 'audio_coding/main/test/Channel.cc', 'audio_coding/main/test/dual_stream_unittest.cc', diff --git a/webrtc/modules/utility/source/coder.h b/webrtc/modules/utility/source/coder.h index ead1e2234..e04372d9a 100644 --- a/webrtc/modules/utility/source/coder.h +++ b/webrtc/modules/utility/source/coder.h @@ -27,11 +27,11 @@ public: int32_t SetEncodeCodec( const CodecInst& codecInst, - ACMAMRPackingFormat amrFormat = AMRBandwidthEfficient); + ACMAMRPackingFormat amrFormat = AMRBandwidthEfficient); int32_t SetDecodeCodec( const CodecInst& codecInst, - ACMAMRPackingFormat amrFormat = AMRBandwidthEfficient); + ACMAMRPackingFormat amrFormat = AMRBandwidthEfficient); int32_t Decode(AudioFrame& decodedAudio, uint32_t sampFreqHz, const int8_t* incomingPayload, int32_t payloadLength); @@ -42,12 +42,13 @@ public: uint32_t& encodedLengthInBytes); protected: - virtual int32_t SendData(FrameType frameType, - uint8_t payloadType, - uint32_t timeStamp, - const uint8_t* payloadData, - uint16_t payloadSize, - const RTPFragmentationHeader* fragmentation); + virtual int32_t SendData( + FrameType frameType, + uint8_t payloadType, + uint32_t timeStamp, + const uint8_t* payloadData, + uint16_t payloadSize, + const RTPFragmentationHeader* fragmentation) OVERRIDE; private: scoped_ptr _acm;