aboutsummaryrefslogtreecommitdiff
path: root/webrtc/modules/audio_conference_mixer/interface
diff options
context:
space:
mode:
Diffstat (limited to 'webrtc/modules/audio_conference_mixer/interface')
-rw-r--r--webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer.h77
-rw-r--r--webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer_defines.h60
2 files changed, 0 insertions, 137 deletions
diff --git a/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer.h b/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer.h
deleted file mode 100644
index 7ff39579ee..0000000000
--- a/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer.h
+++ /dev/null
@@ -1,77 +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.
- */
-
-#ifndef WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_H_
-#define WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_H_
-
-#include "webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer_defines.h"
-#include "webrtc/modules/interface/module.h"
-#include "webrtc/modules/interface/module_common_types.h"
-
-namespace webrtc {
-class AudioMixerOutputReceiver;
-class MixerParticipant;
-class Trace;
-
-class AudioConferenceMixer : public Module
-{
-public:
- enum {kMaximumAmountOfMixedParticipants = 3};
- enum Frequency
- {
- kNbInHz = 8000,
- kWbInHz = 16000,
- kSwbInHz = 32000,
- kFbInHz = 48000,
- kLowestPossible = -1,
- kDefaultFrequency = kWbInHz
- };
-
- // Factory method. Constructor disabled.
- static AudioConferenceMixer* Create(int id);
- virtual ~AudioConferenceMixer() {}
-
- // Module functions
- int64_t TimeUntilNextProcess() override = 0;
- int32_t Process() override = 0;
-
- // Register/unregister a callback class for receiving the mixed audio.
- virtual int32_t RegisterMixedStreamCallback(
- AudioMixerOutputReceiver* receiver) = 0;
- virtual int32_t UnRegisterMixedStreamCallback() = 0;
-
- // Add/remove participants as candidates for mixing.
- virtual int32_t SetMixabilityStatus(MixerParticipant* participant,
- bool mixable) = 0;
- // Returns true if a participant is a candidate for mixing.
- virtual bool MixabilityStatus(
- const MixerParticipant& participant) const = 0;
-
- // Inform the mixer that the participant should always be mixed and not
- // count toward the number of mixed participants. Note that a participant
- // must have been added to the mixer (by calling SetMixabilityStatus())
- // before this function can be successfully called.
- virtual int32_t SetAnonymousMixabilityStatus(
- MixerParticipant* participant, bool mixable) = 0;
- // Returns true if the participant is mixed anonymously.
- virtual bool AnonymousMixabilityStatus(
- const MixerParticipant& participant) const = 0;
-
- // Set the minimum sampling frequency at which to mix. The mixing algorithm
- // may still choose to mix at a higher samling frequency to avoid
- // downsampling of audio contributing to the mixed audio.
- virtual int32_t SetMinimumMixingFrequency(Frequency freq) = 0;
-
-protected:
- AudioConferenceMixer() {}
-};
-} // namespace webrtc
-
-#endif // WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_H_
diff --git a/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer_defines.h b/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer_defines.h
deleted file mode 100644
index d15b7fca02..0000000000
--- a/webrtc/modules/audio_conference_mixer/interface/audio_conference_mixer_defines.h
+++ /dev/null
@@ -1,60 +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.
- */
-
-#ifndef WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_DEFINES_H_
-#define WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_DEFINES_H_
-
-#include "webrtc/modules/interface/module_common_types.h"
-#include "webrtc/typedefs.h"
-
-namespace webrtc {
-class MixHistory;
-
-// A callback class that all mixer participants must inherit from/implement.
-class MixerParticipant
-{
-public:
- // The implementation of this function should update audioFrame with new
- // audio every time it's called.
- //
- // If it returns -1, the frame will not be added to the mix.
- virtual int32_t GetAudioFrame(int32_t id,
- AudioFrame* audioFrame) = 0;
-
- // Returns true if the participant was mixed this mix iteration.
- bool IsMixed() const;
-
- // This function specifies the sampling frequency needed for the AudioFrame
- // for future GetAudioFrame(..) calls.
- virtual int32_t NeededFrequency(int32_t id) const = 0;
-
- MixHistory* _mixHistory;
-protected:
- MixerParticipant();
- virtual ~MixerParticipant();
-};
-
-class AudioMixerOutputReceiver
-{
-public:
- // This callback function provides the mixed audio for this mix iteration.
- // Note that uniqueAudioFrames is an array of AudioFrame pointers with the
- // size according to the size parameter.
- virtual void NewMixedAudio(const int32_t id,
- const AudioFrame& generalAudioFrame,
- const AudioFrame** uniqueAudioFrames,
- const uint32_t size) = 0;
-protected:
- AudioMixerOutputReceiver() {}
- virtual ~AudioMixerOutputReceiver() {}
-};
-} // namespace webrtc
-
-#endif // WEBRTC_MODULES_AUDIO_CONFERENCE_MIXER_INTERFACE_AUDIO_CONFERENCE_MIXER_DEFINES_H_