Documentation
Interactive Live Streaming Standard (Legacy)
Console 官网 Community Technical support

What is the difference between the in-call volume and the media volume?

Type: Integration issues    Platform: Android / iOS / Unity / Cocos Creator / Electron / React Native / Flutter / Flutter2   Last Updated: 2022/09/14 02:23:12

Volume type introduction

The in-call volume refers to the volume of voice and video calls, while the media volume refers to the volume at which background music, videos, and audio effects are played. The in-call volume and the media volume are independent of each other, and the setting of one does not affect the other. The differences between the in-call volume and the media volume are as follows:

In-call volume Media volume
Audio quality Lower. Higher, with good audio performance.
Volume Cannot be adjusted to 0. Can be adjusted to 0.
Echo cancellation algorithm Uses the echo cancellation algorithm of the device system. Uses the echo cancellation algorithm of the Agora RTC SDK.

The system volume is the volume adjusted on the device, which is controlled by the volume type used by the Agora RTC SDK. For example, if the SDK uses the in-call volume, then when you adjust the system volume, you actually adjust the in-call volume.

The volume type used by the SDK is determined by the audio route, the channel profile set in setChannelProfile, the user role set in setClientRole, and the audio scenario set in setAudioProfile. The following tables show the volume types used by the SDK in each scenario:

This page takes C++ APIs as an example.
  • In the AUDIO_SCENARIO_DEFAULT or AUDIO_SCENARIO_SHOWROOM scenario:

    Wired earphones Speakerphone Earpiece Bluetooth devices
    • Hosts in the interactive live streaming profile
    • Users in the communication profile
    Media volume In-call volume In-call volume In-call volume
    Single host in the interactive live streaming profile Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    In-call volume
    Audience in the interactive live streaming profile Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    Media volume
  • In the AUDIO_SCENARIO_CHATROOM_GAMING or AUDIO_SCENARIO_CHATROOM_ENTERTAINMENT scenario:

    Wired earphones Speakerphone Earpiece Bluetooth devices
    • Hosts in the interactive live streaming profile
    • Users in the communication profile
    Media volume In-call volume In-call volume In-call volume
    Single host in the interactive live streaming profile Media volume In-call volume In-call volume In-call volume
    Audience in the interactive live streaming profile Media volume In-call volume In-call volume In-call volume
  • In the AUDIO_SCENARIO_EDUCATION scenario:

    Wired earphones Speakerphone Earpiece Bluetooth devices
    • Hosts in the interactive live streaming profile
    • Users in the communication profile
    Media volume In-call volume In-call volume In-call volume
    Single host in the interactive live streaming profile Media volume In-call volume In-call volume In-call volume
    Audience in the interactive live streaming profile Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    Media volume
  • In the AUDIO_SCENARIO_GAME_STREAMING or AUDIO_SCENARIO_MEETING scenario:

    Wired earphones Speakerphone Earpiece Bluetooth devices
    • Hosts in the interactive live streaming profile
    • Users in the communication profile
    Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    • Android: In-call volume
    • iOS: Media volume
    Single host in the interactive live streaming profile Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    • Android: In-call volume
    • iOS: Media volume
    Audience in the interactive live streaming profile Media volume Media volume
    • Android: In-call volume
    • iOS: Media volume
    Media volume

Q & A

I set the volume of the game effects before joining the channel, why did the volume change after joining a channel?

The in-call volume and the media volume are independent of each other, and the setting of one does not affect the other. Before joining the channel, the volume that the user adjusts on the device is media volume; after joining the channel, if the Agora RTC SDK uses the in-call volume, and the media volume and the in-call volume of the user's device are different, the volume of the game effects changes. To avoid this issue, Agora recommends setting the SDK's volume type to media volume by referring to Volume type introduction.