Agora RTC Objective-C API Reference Refactor

Public Member Functions
IRemoteAudioMixerSource Class Referenceabstract

Inherits RefCountInterface.

## Public Member Functions
virtual int | addAudioTrack (agora_refptr< IRemoteAudioTrack > track, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | removeAudioTrack (agora_refptr< IRemoteAudioTrack > track, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | getMixDelay () const =0

## Detailed Description

The IRemoteAudioMixerSource class abstracts a multi-in-single-out audio source which receives audio streams from multiple remote audio tracks and generate mixed audio stream in user defined output format.

## Constructor & Destructor Documentation

## ◆ ~IRemoteAudioMixerSource()

virtual ~IRemoteAudioMixerSource | ( |  | ) |
| inline virtual

## Member Function Documentation

## ◆ addAudioTrack()

virtual int addAudioTrack | ( | agora_refptr< IRemoteAudioTrack > | track,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Add a audio track for mixing. Automatically starts mixing if add audio track

Parameters

  track | The instance of the audio track that you want mixer to receive its audio stream.

## ◆ removeAudioTrack()

virtual int removeAudioTrack | ( | agora_refptr< IRemoteAudioTrack > | track,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Remove a audio track for mixing. Automatically stops the mixed stream if all audio tracks are removed

Parameters

  track | The instance of the audio track that you want to remove from the mixer.

## ◆ getMixDelay()

virtual int getMixDelay | ( |  | ) | const
| pure virtual

Gets the delay time for mix.

## ◆ AddRef()

virtual void AddRef | ( |  | ) | const
| pure virtual inherited

## ◆ Release()

virtual RefCountReleaseStatus Release | ( |  | ) | const
| pure virtual inherited

## ◆ HasOneRef()

virtual bool HasOneRef | ( |  | ) | const
| pure virtual inherited