Agora Java API Reference for Android

Public Member Functions | List of all members
agora::rtc::IAudioPcmDataSender Class Referenceabstract

`#include <NGIAgoraMediaNode.h>`

Inheritance diagram for agora::rtc::IAudioPcmDataSender:

## Public Member Functions
virtual int | sendAudioPcmData (const void *audio_data, uint32_t capture_timestamp, int64_t presentation_ms, const size_t samples_per_channel, const agora::rtc::BYTES_PER_SAMPLE bytes_per_sample, const size_t number_of_channels, const uint32_t sample_rate, 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

## Detailed Description

The IAudioPcmDataSender class.

In scenarios involving custom audio source, you can use the `IAudioPcmDataSender` class to send PCM audio data directly to the audio track. If the audio track is disabled, the sent audio data is automatically discarded.

## Member Function Documentation

## ◆ sendAudioPcmData()

virtual int agora::rtc::IAudioPcmDataSender::sendAudioPcmData | ( | const void * | audio_data,
|  | uint32_t | capture_timestamp,
|  | int64_t | presentation_ms,
|  | const size_t | samples_per_channel,
|  | const agora::rtc::BYTES_PER_SAMPLE | bytes_per_sample,
|  | const size_t | number_of_channels,
|  | const uint32_t | sample_rate,
|  | aosl_ref_t | ares = `AOSL_REF_INVALID`
| ) |  |
| pure virtual

Sends the PCM audio data to the local audio track.

Parameters

  audio_data | The PCM audio data to be sent.
  samples_per_channel | The number of audio samples in 10 ms for each audio channel.
  bytes_per_sample | The number of bytes in each sample.
  number_of_channels | The number of audio channels.
  sample_rate | The sample rate (Hz). The minimum value is 8000.

Returns
  - 0: Success.
  - < 0: Failure.