Agora C++ API Reference for All Platforms

Classes | Public Types | Public Member Functions | List of all members
agora::rtc::ILocalAudioTrackEx Class Referenceabstract

Inherits agora::rtc::ILocalAudioTrack.

## Classes
struct | DetachOption

## Public Types
enum | DetachReason { MANUAL, TRACK_DESTROY, MIXER_DESTROY }
Public Types inherited from agora::rtc::IAudioTrack
enum | AudioFilterPosition { RecordingLocalPlayback, PostAudioProcessing, RemoteUserPlayback, PcmSource, PcmSourceSending, PcmSourceLocalPlayback, RemoteMixedPlayback }

## Public Member Functions
| ILocalAudioTrackEx ()
virtual | ~ILocalAudioTrackEx ()
virtual void | attach (agora_refptr< agora::rtc::AudioState > audioState, std::shared_ptr< AudioNodeBase > audioNetworkSink, uint32_t sourceId)=0
virtual void | detach (DetachReason reason)=0
virtual int | ClearSenderBuffer ()
virtual int | setExtraDelay (int delay_ms)
virtual bool | getStatistics (PacketStats &stats)
virtual bool | isMediaPacketTrack ()
virtual bool | isEncodedFrameTrack ()
virtual int | enableMusicMode (bool enable)
virtual int | setDetachOption (DetachOption &option)
virtual int | enableEarMonitorLLApiInternal (bool enable, int includeAudioFilters)=0
virtual ILocalAudioTrack::LocalAudioTrackStats | GetStatsLLApiInternal ()=0
virtual int | setEnabledLLApiInternal (bool enable)=0
virtual bool | isEnabledLLApiInternal () const =0
virtual bool | addAudioFilterLLApiInternal (agora_refptr< IAudioFilter > filter, AudioFilterPosition position, const ExtensionContext &extContext={})=0
virtual bool | removeAudioFilterLLApiInternal (agora_refptr< IAudioFilter > filter, AudioFilterPosition position)=0
virtual int | enableAudioFilterLLApiInternal (const char *id, bool enable, AudioFilterPosition position)
virtual int | setFilterPropertyLLApiInternal (const char *id, const char *key, const char *jsonValue, AudioFilterPosition position)
virtual int | getFilterPropertyLLApiInternal (const char *id, const char *key, char *jsonValue, size_t bufSize, AudioFilterPosition position)
virtual agora_refptr< IAudioFilter > | getAudioFilterLLApiInternal (const char *name, AudioFilterPosition position) const =0
virtual int | adjustPlayoutVolumeLLApiInternal (int volume)=0
virtual int | getPlayoutVolumeLLApiInternal (int *volume)=0
virtual int | adjustPublishVolumeLLApiInternal (int volume)=0
virtual int | getPublishVolumeLLApiInternal (int *volume)=0
virtual int | enableLocalPlaybackLLApiInternal (bool enable, bool sync=true)=0
virtual bool | addAudioSinkLLApiInternal (agora_refptr< IAudioSinkBase > sink, const AudioSinkWants &wants)=0
virtual bool | removeAudioSinkLLApiInternal (agora_refptr< IAudioSinkBase > sink)=0
virtual LOCAL_AUDIO_STREAM_STATE | getStateLLApiInternal ()=0
virtual int | registerTrackObserverLLApiInternal (ILocalAudioTrackObserver *observer)=0
virtual int | unregisterTrackObserverLLApiInternal (ILocalAudioTrackObserver *observer)=0
virtual bool | enforceFilterCompositesReadyLLApiInternal ()=0
virtual AUDIO_SOURCE_TYPE | audioSourceType ()=0
virtual void | setMaxBufferedAudioFrameNumberApiInternal (int number)=0
virtual void | attachAudioDeviceLLApiInternal ()=0
virtual void | detachAudioDeviceLLApiInternal ()=0
Public Member Functions inherited from agora::rtc::ILocalAudioTrack
virtual int | setEnabled (bool enable, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual bool | isEnabled () const =0
virtual LOCAL_AUDIO_STREAM_STATE | getState ()=0
virtual LocalAudioTrackStats | GetStats ()=0
virtual int | adjustPublishVolume (int volume, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | getPublishVolume (int *volume)=0
virtual int | enableLocalPlayback (bool enable, bool sync=true, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | enableEarMonitor (bool enable, int includeAudioFilters, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | registerTrackObserver (ILocalAudioTrackObserver *observer, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | unregisterTrackObserver (ILocalAudioTrackObserver *observer)=0
virtual void | setMaxBufferedAudioFrameNumber (int number, aosl_ref_t ares=AOSL_REF_INVALID)=0
Public Member Functions inherited from agora::rtc::IAudioTrack
virtual int | adjustPlayoutVolume (int volume, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | getPlayoutVolume (int *volume)=0
virtual bool | addAudioFilter (agora_refptr< IAudioFilter > filter, AudioFilterPosition position, ExtensionContext *extContext=NULL, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual bool | removeAudioFilter (agora_refptr< IAudioFilter > filter, AudioFilterPosition position, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | enableAudioFilter (const char *id, bool enable, AudioFilterPosition position, aosl_ref_t ares=AOSL_REF_INVALID)
virtual int | setFilterProperty (const char *id, const char *key, const char *jsonValue, AudioFilterPosition position, aosl_ref_t ares=AOSL_REF_INVALID)
virtual int | getFilterProperty (const char *id, const char *key, char *jsonValue, size_t bufSize, AudioFilterPosition position)
virtual agora_refptr< IAudioFilter > | getAudioFilter (const char *name, AudioFilterPosition position) const =0
virtual bool | addAudioSink (agora_refptr< IAudioSinkBase > sink, const AudioSinkWants &wants, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual bool | removeAudioSink (agora_refptr< IAudioSinkBase > sink, aosl_ref_t ares=AOSL_REF_INVALID)=0
Public Member Functions inherited from agora::RefCountInterface
virtual void | AddRef () const =0
virtual RefCountReleaseStatus | Release () const =0
virtual bool | HasOneRef () const =0

## Additional Inherited Members
Protected Member Functions inherited from agora::rtc::ILocalAudioTrack
| ~ILocalAudioTrack ()
Protected Member Functions inherited from agora::RefCountInterface
virtual | ~RefCountInterface ()

## Member Enumeration Documentation

## ◆ DetachReason

enum agora::rtc::ILocalAudioTrackEx::DetachReason

Enumerator
MANUAL |
TRACK_DESTROY |
MIXER_DESTROY |

## Constructor & Destructor Documentation

## ◆ ILocalAudioTrackEx()

agora::rtc::ILocalAudioTrackEx::ILocalAudioTrackEx | ( |  | ) |
| inline

## ◆ ~ILocalAudioTrackEx()

virtual agora::rtc::ILocalAudioTrackEx::~ILocalAudioTrackEx | ( |  | ) |
| inline virtual

## Member Function Documentation

## ◆ attach()

virtual void agora::rtc::ILocalAudioTrackEx::attach | ( | agora_refptr< agora::rtc::AudioState > | audioState,
|  | std::shared_ptr< AudioNodeBase > | audioNetworkSink,
|  | uint32_t | sourceId
| ) |  |
| pure virtual

## ◆ detach()

virtual void agora::rtc::ILocalAudioTrackEx::detach | ( | DetachReason | reason | ) |
| pure virtual

## ◆ ClearSenderBuffer()

virtual int agora::rtc::ILocalAudioTrackEx::ClearSenderBuffer | ( |  | ) |
| inline virtual

clear sender buffer

Returns
  - >= 0: Frame number in sender buffer.
  - < 0: Failure.

Implements agora::rtc::ILocalAudioTrack.

## ◆ setExtraDelay()

virtual int agora::rtc::ILocalAudioTrackEx::setExtraDelay | ( | int | delay_ms | ) |
| inline virtual

## ◆ getStatistics()

virtual bool agora::rtc::ILocalAudioTrackEx::getStatistics | ( | PacketStats & | stats | ) |
| inline virtual

## ◆ isMediaPacketTrack()

virtual bool agora::rtc::ILocalAudioTrackEx::isMediaPacketTrack | ( |  | ) |
| inline virtual

## ◆ isEncodedFrameTrack()

virtual bool agora::rtc::ILocalAudioTrackEx::isEncodedFrameTrack | ( |  | ) |
| inline virtual

## ◆ enableMusicMode()

virtual int agora::rtc::ILocalAudioTrackEx::enableMusicMode | ( | bool | enable | ) |
| inline virtual

## ◆ setDetachOption()

virtual int agora::rtc::ILocalAudioTrackEx::setDetachOption | ( | DetachOption & | option | ) |
| inline virtual

## ◆ enableEarMonitorLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::enableEarMonitorLLApiInternal | ( | bool | enable,
|  | int | includeAudioFilters
| ) |  |
| pure virtual

## ◆ GetStatsLLApiInternal()

virtual ILocalAudioTrack::LocalAudioTrackStats agora::rtc::ILocalAudioTrackEx::GetStatsLLApiInternal | ( |  | ) |
| pure virtual

## ◆ setEnabledLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::setEnabledLLApiInternal | ( | bool | enable | ) |
| pure virtual

## ◆ isEnabledLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::isEnabledLLApiInternal | ( |  | ) | const
| pure virtual

## ◆ addAudioFilterLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::addAudioFilterLLApiInternal | ( | agora_refptr< IAudioFilter > | filter,
|  | AudioFilterPosition | position,
|  | const ExtensionContext & | extContext = `{}`
| ) |  |
| pure virtual

## ◆ removeAudioFilterLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::removeAudioFilterLLApiInternal | ( | agora_refptr< IAudioFilter > | filter,
|  | AudioFilterPosition | position
| ) |  |
| pure virtual

## ◆ enableAudioFilterLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::enableAudioFilterLLApiInternal | ( | const char * | id,
|  | bool | enable,
|  | AudioFilterPosition | position
| ) |  |
| inline virtual

## ◆ setFilterPropertyLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::setFilterPropertyLLApiInternal | ( | const char * | id,
|  | const char * | key,
|  | const char * | jsonValue,
|  | AudioFilterPosition | position
| ) |  |
| inline virtual

## ◆ getFilterPropertyLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::getFilterPropertyLLApiInternal | ( | const char * | id,
|  | const char * | key,
|  | char * | jsonValue,
|  | size_t | bufSize,
|  | AudioFilterPosition | position
| ) |  |
| inline virtual

## ◆ getAudioFilterLLApiInternal()

virtual agora_refptr<IAudioFilter> agora::rtc::ILocalAudioTrackEx::getAudioFilterLLApiInternal | ( | const char * | name,
|  | AudioFilterPosition | position
| ) |  | const
| pure virtual

## ◆ adjustPlayoutVolumeLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::adjustPlayoutVolumeLLApiInternal | ( | int | volume | ) |
| pure virtual

## ◆ getPlayoutVolumeLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::getPlayoutVolumeLLApiInternal | ( | int * | volume | ) |
| pure virtual

## ◆ adjustPublishVolumeLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::adjustPublishVolumeLLApiInternal | ( | int | volume | ) |
| pure virtual

## ◆ getPublishVolumeLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::getPublishVolumeLLApiInternal | ( | int * | volume | ) |
| pure virtual

## ◆ enableLocalPlaybackLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::enableLocalPlaybackLLApiInternal | ( | bool | enable,
|  | bool | sync = `true`
| ) |  |
| pure virtual

## ◆ addAudioSinkLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::addAudioSinkLLApiInternal | ( | agora_refptr< IAudioSinkBase > | sink,
|  | const AudioSinkWants & | wants
| ) |  |
| pure virtual

## ◆ removeAudioSinkLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::removeAudioSinkLLApiInternal | ( | agora_refptr< IAudioSinkBase > | sink | ) |
| pure virtual

## ◆ getStateLLApiInternal()

virtual LOCAL_AUDIO_STREAM_STATE agora::rtc::ILocalAudioTrackEx::getStateLLApiInternal | ( |  | ) |
| pure virtual

## ◆ registerTrackObserverLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::registerTrackObserverLLApiInternal | ( | ILocalAudioTrackObserver * | observer | ) |
| pure virtual

## ◆ unregisterTrackObserverLLApiInternal()

virtual int agora::rtc::ILocalAudioTrackEx::unregisterTrackObserverLLApiInternal | ( | ILocalAudioTrackObserver * | observer | ) |
| pure virtual

## ◆ enforceFilterCompositesReadyLLApiInternal()

virtual bool agora::rtc::ILocalAudioTrackEx::enforceFilterCompositesReadyLLApiInternal | ( |  | ) |
| pure virtual

## ◆ audioSourceType()

virtual AUDIO_SOURCE_TYPE agora::rtc::ILocalAudioTrackEx::audioSourceType | ( |  | ) |
| pure virtual

## ◆ setMaxBufferedAudioFrameNumberApiInternal()

virtual void agora::rtc::ILocalAudioTrackEx::setMaxBufferedAudioFrameNumberApiInternal | ( | int | number | ) |
| pure virtual

## ◆ attachAudioDeviceLLApiInternal()

virtual void agora::rtc::ILocalAudioTrackEx::attachAudioDeviceLLApiInternal | ( |  | ) |
| pure virtual

## ◆ detachAudioDeviceLLApiInternal()

virtual void agora::rtc::ILocalAudioTrackEx::detachAudioDeviceLLApiInternal | ( |  | ) |
| pure virtual