webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
webrtc::AudioMixerImpl Class Reference

#include <audio_mixer_impl.h>

Inheritance diagram for webrtc::AudioMixerImpl:
webrtc::AudioMixer webrtc::AudioMixer rtc::RefCountInterface rtc::RefCountInterface rtc::RefCountInterface rtc::RefCountInterface

Classes

struct  SourceStatus
 

Public Types

using SourceStatusList = std::vector< std::unique_ptr< SourceStatus > >
 
using SourceStatusList = std::vector< std::unique_ptr< SourceStatus > >
 

Public Member Functions

 ~AudioMixerImpl () override
 
bool AddSource (Source *audio_source) override
 
void RemoveSource (Source *audio_source) override
 
void Mix (size_t number_of_channels, AudioFrame *audio_frame_for_mixing) override LOCKS_EXCLUDED(crit_)
 
bool GetAudioSourceMixabilityStatusForTest (Source *audio_source) const
 
 ~AudioMixerImpl () override
 
bool AddSource (Source *audio_source) override
 
void RemoveSource (Source *audio_source) override
 
void Mix (size_t number_of_channels, AudioFrame *audio_frame_for_mixing) override LOCKS_EXCLUDED(crit_)
 
bool GetAudioSourceMixabilityStatusForTest (Source *audio_source) const
 
- Public Member Functions inherited from rtc::RefCountInterface
virtual int AddRef () const =0
 
virtual int Release () const =0
 
virtual int AddRef () const =0
 
virtual int Release () const =0
 

Static Public Member Functions

static rtc::scoped_refptr< AudioMixerImplCreate ()
 
static RTC_DEPRECATED rtc::scoped_refptr< AudioMixerImplCreateWithOutputRateCalculator (std::unique_ptr< OutputRateCalculator > output_rate_calculator)
 
static rtc::scoped_refptr< AudioMixerImplCreate (std::unique_ptr< OutputRateCalculator > output_rate_calculator, bool use_limiter)
 
static rtc::scoped_refptr< AudioMixerImplCreate ()
 
static RTC_DEPRECATED rtc::scoped_refptr< AudioMixerImplCreateWithOutputRateCalculator (std::unique_ptr< OutputRateCalculator > output_rate_calculator)
 
static rtc::scoped_refptr< AudioMixerImplCreate (std::unique_ptr< OutputRateCalculator > output_rate_calculator, bool use_limiter)
 

Static Public Attributes

static const int kFrameDurationInMs = 10
 
static const int kMaximumAmountOfMixedAudioSources = 3
 

Protected Member Functions

 AudioMixerImpl (std::unique_ptr< OutputRateCalculator > output_rate_calculator, bool use_limiter)
 
 AudioMixerImpl (std::unique_ptr< OutputRateCalculator > output_rate_calculator, bool use_limiter)
 
- Protected Member Functions inherited from webrtc::AudioMixer
 ~AudioMixer () override
 
 ~AudioMixer () override
 
- Protected Member Functions inherited from rtc::RefCountInterface
virtual ~RefCountInterface ()
 
virtual ~RefCountInterface ()
 

Member Typedef Documentation

◆ SourceStatusList [1/2]

using webrtc::AudioMixerImpl::SourceStatusList = std::vector<std::unique_ptr<SourceStatus> >

◆ SourceStatusList [2/2]

using webrtc::AudioMixerImpl::SourceStatusList = std::vector<std::unique_ptr<SourceStatus> >

Constructor & Destructor Documentation

◆ ~AudioMixerImpl() [1/2]

webrtc::AudioMixerImpl::~AudioMixerImpl ( )
override

◆ AudioMixerImpl() [1/2]

webrtc::AudioMixerImpl::AudioMixerImpl ( std::unique_ptr< OutputRateCalculator output_rate_calculator,
bool  use_limiter 
)
protected

◆ ~AudioMixerImpl() [2/2]

webrtc::AudioMixerImpl::~AudioMixerImpl ( )
override

◆ AudioMixerImpl() [2/2]

webrtc::AudioMixerImpl::AudioMixerImpl ( std::unique_ptr< OutputRateCalculator output_rate_calculator,
bool  use_limiter 
)
protected

Member Function Documentation

◆ AddSource() [1/2]

bool webrtc::AudioMixerImpl::AddSource ( Source audio_source)
overridevirtual

Implements webrtc::AudioMixer.

◆ AddSource() [2/2]

bool webrtc::AudioMixerImpl::AddSource ( Source audio_source)
overridevirtual

Implements webrtc::AudioMixer.

◆ Create() [1/4]

static rtc::scoped_refptr<AudioMixerImpl> webrtc::AudioMixerImpl::Create ( )
static

◆ Create() [2/4]

rtc::scoped_refptr< AudioMixerImpl > webrtc::AudioMixerImpl::Create ( )
static

◆ Create() [3/4]

static rtc::scoped_refptr<AudioMixerImpl> webrtc::AudioMixerImpl::Create ( std::unique_ptr< OutputRateCalculator output_rate_calculator,
bool  use_limiter 
)
static

◆ Create() [4/4]

rtc::scoped_refptr< AudioMixerImpl > webrtc::AudioMixerImpl::Create ( std::unique_ptr< OutputRateCalculator output_rate_calculator,
bool  use_limiter 
)
static

◆ CreateWithOutputRateCalculator() [1/2]

rtc::scoped_refptr< AudioMixerImpl > webrtc::AudioMixerImpl::CreateWithOutputRateCalculator ( std::unique_ptr< OutputRateCalculator output_rate_calculator)
static

◆ CreateWithOutputRateCalculator() [2/2]

static RTC_DEPRECATED rtc::scoped_refptr<AudioMixerImpl> webrtc::AudioMixerImpl::CreateWithOutputRateCalculator ( std::unique_ptr< OutputRateCalculator output_rate_calculator)
static

◆ GetAudioSourceMixabilityStatusForTest() [1/2]

bool webrtc::AudioMixerImpl::GetAudioSourceMixabilityStatusForTest ( Source audio_source) const

◆ GetAudioSourceMixabilityStatusForTest() [2/2]

bool webrtc::AudioMixerImpl::GetAudioSourceMixabilityStatusForTest ( AudioMixerImpl::Source audio_source) const

◆ Mix() [1/2]

void webrtc::AudioMixerImpl::Mix ( size_t  number_of_channels,
AudioFrame audio_frame_for_mixing 
)
overridevirtual

Implements webrtc::AudioMixer.

◆ Mix() [2/2]

void webrtc::AudioMixerImpl::Mix ( size_t  number_of_channels,
AudioFrame audio_frame_for_mixing 
)
overridevirtual

Implements webrtc::AudioMixer.

◆ RemoveSource() [1/2]

void webrtc::AudioMixerImpl::RemoveSource ( Source audio_source)
overridevirtual

Implements webrtc::AudioMixer.

◆ RemoveSource() [2/2]

void webrtc::AudioMixerImpl::RemoveSource ( Source audio_source)
overridevirtual

Implements webrtc::AudioMixer.

Member Data Documentation

◆ kFrameDurationInMs

static const int webrtc::AudioMixerImpl::kFrameDurationInMs = 10
static

◆ kMaximumAmountOfMixedAudioSources

static const int webrtc::AudioMixerImpl::kMaximumAmountOfMixedAudioSources = 3
static

The documentation for this class was generated from the following files: