#include "webrtc/modules/interface/module_common_types.h"
#include "webrtc/modules/utility/interface/file_player.h"
#include "webrtc/modules/utility/interface/file_recorder.h"
+#include "webrtc/system_wrappers/interface/scoped_ptr.h"
#include "webrtc/voice_engine/include/voe_base.h"
#include "webrtc/voice_engine/level_indicator.h"
#include "webrtc/voice_engine/monitor_module.h"
class Statistics;
class TransmitMixer : public MonitorObserver,
- public FileCallback
-
-{
+ public FileCallback {
public:
static int32_t Create(TransmitMixer*& mixer, uint32_t instanceId);
// sending codecs.
void GetSendCodecInfo(int* max_sample_rate, int* max_channels);
- int GenerateAudioFrame(const int16_t audioSamples[],
- int nSamples,
- int nChannels,
- int samplesPerSec);
+ void GenerateAudioFrame(const int16_t audioSamples[],
+ int nSamples,
+ int nChannels,
+ int samplesPerSec);
int32_t RecordAudioToFile(uint32_t mixingFrequency);
int32_t MixOrReplaceAudioWithFile(
// owns
MonitorModule _monitorModule;
AudioFrame _audioFrame;
- PushResampler resampler_; // ADM sample rate -> mixing rate
+ PushResampler<int16_t> resampler_; // ADM sample rate -> mixing rate
FilePlayer* _filePlayerPtr;
FileRecorder* _fileRecorderPtr;
FileRecorder* _fileCallRecorderPtr;
int32_t _remainingMuteMicTimeMs;
bool stereo_codec_;
bool swap_stereo_channels_;
+ scoped_ptr<int16_t[]> mono_buffer_;
};
} // namespace voe