Agora Java API Reference for Android

Public Member Functions | Public Attributes | List of all members
io.agora.rtc2.audio.AudioParams Class Reference

## Public Member Functions
| AudioParams (int sampleRate, int channelCnt, int mode, int samplesPerCall)
int | getSampleRate ()
int | getChannel ()
int | getMode ()
int | getSamplesPerCall ()
String | toString ()

## Public Attributes
int | sampleRate = 0
int | channel = 0
int | mode = Constants.RAW_AUDIO_FRAME_OP_MODE_READ_ONLY
int | samplesPerCall = 0

## Detailed Description

The `AudioParams` class.

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

- getRecordAudioParams: Sets the audio recording format for the onRecordFrame callback.
- getPlaybackAudioParams: Sets the audio playback format for the onPlaybackFrame callback.
- getMixedAudioParams: Sets the audio mixing format for the onMixedFrame callback.

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:
  - onRecordFrame
  - onPlaybackFrame
  - onMixedFrame

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.rtc2.audio.AudioParams.sampleRate = 0

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.rtc2.audio.AudioParams.channel = 0

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

- `1`: Mono (Default)
- `2`: Stereo

## ◆ mode

int io.agora.rtc2.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_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.rtc2.audio.AudioParams.samplesPerCall = 0

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