Agora Java API Reference for Android
io.agora.rtc.audio.AudioParams Class Reference

Public Member Functions

 AudioParams (int sampleRate, int channelCnt, int mode, int samplesPerCall)
 
String toString ()
 

Public Attributes

int sampleRate = 16000
 
int channel = 1
 
int mode = Constants.RAW_AUDIO_FRAME_OP_MODE_READ_ONLY
 
int samplesPerCall = 1024
 

Detailed Description

The AudioParams class.

Since
v3.4.5

You can pass the AudioParams object in the return value of the following callbacks to set the audio data format for the corresponding callbacks:

Note
The SDK calculates the sample interval according to the samplesPerCall, sampleRate, and channelCnt values in the AudioParams object and triggers the following callbacks at the calculated sample interval:

Sample interval (seconds) = samplePerCall/(sampleRate × channelCnt). Ensure that the value of sample interval is equal to or greater than 0.01.

Member Data Documentation

◆ sampleRate

int io.agora.rtc.audio.AudioParams.sampleRate = 16000

The audio sample rate (Hz), which can be set as one of the following values:

  • 8000
  • 16000 (Default)
  • 32000
  • 44100
  • 48000

◆ channel

int io.agora.rtc.audio.AudioParams.channel = 1

The number of audio channels, which can be set as either of the following values:

  • 1: Mono (Default)
  • 2: Stereo

◆ mode

int io.agora.rtc.audio.AudioParams.mode = Constants.RAW_AUDIO_FRAME_OP_MODE_READ_ONLY

The use mode of the audio data:

  • RAW_AUDIO_FRAME_OP_MODE_READ_ONLY(0): (Default) Read-only mode, in which users can only read the AudioFrame without modifying anything. For example, this mode applies when users acquire data with the Agora SDK and then push the RTMP or RTMPS streams.
  • RAW_AUDIO_FRAME_OP_MODE_WRITE_ONLY(1): Write-only mode, in which users replace the AudioFrame with their own data and then pass it to the SDK for encoding. For example, this mode applies when users need the Agora SDK to encode and transmit their custom audio data.
  • RAW_AUDIO_FRAME_OP_MODE_READ_WRITE(2): Read and write mode, in which users read the AudioFrame, modify it, and then play it. For example, this mode applies when users have their own sound-effect processing module to pre-process the audio (such as a voice changer).

◆ samplesPerCall

int io.agora.rtc.audio.AudioParams.samplesPerCall = 1024

The number of samples. For example, set it as 1024 for RTMP or RTMPS streaming.