Agora Java API Reference for Android
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
agora::rtc::ChannelMediaOptions Struct Reference

#include <IAgoraRtcEngine.h>

Public Member Functions

void SetAll (const ChannelMediaOptions &change)
 
bool operator== (const ChannelMediaOptions &o) const
 
ChannelMediaOptionsoperator= (const ChannelMediaOptions &replace)
 

Static Public Member Functions

template<typename T >
static void SetFrom (Optional< T > *s, const Optional< T > &o)
 
template<typename T >
static void ReplaceBy (Optional< T > *s, const Optional< T > &o)
 

Public Attributes

Optional< bool > publishCameraTrack
 
Optional< bool > publishSecondaryCameraTrack
 
Optional< bool > publishAudioTrack
 
Optional< bool > publishScreenTrack
 
Optional< bool > publishSecondaryScreenTrack
 
Optional< bool > publishCustomAudioTrack
 
Optional< int > publishCustomAudioSourceId
 
Optional< bool > publishCustomAudioTrackEnableAec
 
Optional< bool > publishDirectCustomAudioTrack
 
Optional< bool > publishCustomAudioTrackAec
 
Optional< bool > publishCustomVideoTrack
 
Optional< bool > publishEncodedVideoTrack
 
Optional< bool > publishMediaPlayerAudioTrack
 
Optional< bool > publishMediaPlayerVideoTrack
 
Optional< bool > publishTrancodedVideoTrack
 
Optional< bool > autoSubscribeAudio
 
Optional< bool > autoSubscribeVideo
 
Optional< bool > startPreview
 
Optional< bool > enableAudioRecordingOrPlayout
 
Optional< int > publishMediaPlayerId
 
Optional< CLIENT_ROLE_TYPE > clientRoleType
 
Optional< AUDIENCE_LATENCY_LEVEL_TYPE > audienceLatencyLevel
 
Optional< VIDEO_STREAM_TYPE > defaultVideoStreamType
 
Optional< CHANNEL_PROFILE_TYPE > channelProfile
 
Optional< int > audioDelayMs
 
Optional< int > mediaPlayerAudioDelayMs
 
Optional< const char * > token
 
Optional< bool > enableBuiltInMediaEncryption
 
Optional< bool > publishRhythmPlayerTrack
 
Optional< bool > isInteractiveAudience
 

Detailed Description

The channel media options.

Member Data Documentation

◆ publishCameraTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishCameraTrack

Determines whether to publish the video of the camera track.

  • true: Publish the video track of the camera capturer.
  • false: (Default) Do not publish the video track of the camera capturer.

◆ publishSecondaryCameraTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishSecondaryCameraTrack

Determines whether to publish the video of the secondary camera track.

  • true: Publish the video track of the secondary camera capturer.
  • false: (Default) Do not publish the video track of the secondary camera capturer.

◆ publishAudioTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishAudioTrack

Determines whether to publish the recorded audio.

  • true: Publish the recorded audio.
  • false: (Default) Do not publish the recorded audio.

◆ publishScreenTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishScreenTrack

Determines whether to publish the video of the screen track.

  • true: Publish the video track of the screen capturer.
  • false: (Default) Do not publish the video track of the screen capturer.

◆ publishSecondaryScreenTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishSecondaryScreenTrack

Determines whether to publish the video of the secondary screen track.

  • true: Publish the video track of the secondary screen capturer.
  • false: (Default) Do not publish the video track of the secondary screen capturer.

◆ publishCustomAudioTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishCustomAudioTrack

Determines whether to publish the audio of the custom audio track.

  • true: Publish the audio of the custom audio track.
  • false: (Default) Do not publish the audio of the custom audio track.

◆ publishCustomAudioSourceId

Optional<int> agora::rtc::ChannelMediaOptions::publishCustomAudioSourceId

Determines the source id of the custom audio, default is 0.

◆ publishCustomAudioTrackEnableAec

Optional<bool> agora::rtc::ChannelMediaOptions::publishCustomAudioTrackEnableAec

Determines whether to enable AEC when publish custom audio track.

  • true: Enable AEC.
  • false: (Default) Do not enable AEC.

◆ publishDirectCustomAudioTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishDirectCustomAudioTrack

Determines whether to publish direct custom audio track.

  • true: publish.
  • false: (Default) Do not publish.

◆ publishCustomAudioTrackAec

Optional<bool> agora::rtc::ChannelMediaOptions::publishCustomAudioTrackAec

Determines whether to publish AEC custom audio track.

  • true: Publish AEC track.
  • false: (Default) Do not publish AEC track.

◆ publishCustomVideoTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishCustomVideoTrack

Determines whether to publish the video of the custom video track.

  • true: Publish the video of the custom video track.
  • false: (Default) Do not publish the video of the custom video track.

◆ publishEncodedVideoTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishEncodedVideoTrack

Determines whether to publish the video of the encoded video track.

  • true: Publish the video of the encoded video track.
  • false: (default) Do not publish the video of the encoded video track.

◆ publishMediaPlayerAudioTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishMediaPlayerAudioTrack

Determines whether to publish the audio track of media player source.

  • true: Publish the audio track of media player source.
  • false: (default) Do not publish the audio track of media player source.

◆ publishMediaPlayerVideoTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishMediaPlayerVideoTrack

Determines whether to publish the video track of media player source.

  • true: Publish the video track of media player source.
  • false: (default) Do not publish the video track of media player source.

◆ publishTrancodedVideoTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishTrancodedVideoTrack

Determines whether to publish the local transcoded video track.

  • true: Publish the video track of local transcoded video track.
  • false: (default) Do not publish the local transcoded video track.

◆ autoSubscribeAudio

Optional<bool> agora::rtc::ChannelMediaOptions::autoSubscribeAudio

Determines whether to subscribe to all audio streams automatically. It can replace calling setDefaultMuteAllRemoteAudioStreams before joining a channel.

  • true: Subscribe to all audio streams automatically.
  • false: (Default) Do not subscribe to any audio stream automatically.

◆ autoSubscribeVideo

Optional<bool> agora::rtc::ChannelMediaOptions::autoSubscribeVideo

Determines whether to subscribe to all video streams automatically. It can replace calling setDefaultMuteAllRemoteVideoStreams before joining a channel.

  • true: Subscribe to all video streams automatically.
  • false: (Default) do not subscribe to any video stream automatically.

◆ startPreview

Optional<bool> agora::rtc::ChannelMediaOptions::startPreview

Determines whether to start preview when join channel if canvas have been set.

  • true: (Default) start preview when join channel.
  • false: Do not start preview.

◆ enableAudioRecordingOrPlayout

Optional<bool> agora::rtc::ChannelMediaOptions::enableAudioRecordingOrPlayout

Determines whether to enable audio recording or playout.

  • true: It's used to publish audio and mix microphone, or subscribe audio and playout
  • false: It's used to publish extenal audio frame only without mixing microphone, or no need audio device to playout audio either

◆ publishMediaPlayerId

Optional<int> agora::rtc::ChannelMediaOptions::publishMediaPlayerId

Determines which media player source should be published.

  • DEFAULT_PLAYER_ID(0) is default.

◆ clientRoleType

Optional<CLIENT_ROLE_TYPE> agora::rtc::ChannelMediaOptions::clientRoleType

The client role type: #CLIENT_ROLE_TYPE.

◆ audienceLatencyLevel

Optional<AUDIENCE_LATENCY_LEVEL_TYPE> agora::rtc::ChannelMediaOptions::audienceLatencyLevel

The audience latency level type. See AUDIENCE_LATENCY_LEVEL_TYPE

◆ defaultVideoStreamType

Optional<VIDEO_STREAM_TYPE> agora::rtc::ChannelMediaOptions::defaultVideoStreamType

The default video stream type: #VIDEO_STREAM_TYPE.

◆ channelProfile

Optional<CHANNEL_PROFILE_TYPE> agora::rtc::ChannelMediaOptions::channelProfile

The channel profile: #CHANNEL_PROFILE_TYPE.

◆ audioDelayMs

Optional<int> agora::rtc::ChannelMediaOptions::audioDelayMs

The delay in ms for sending audio frames. This is used for explicit control of A/V sync. To switch off the delay, set the value to zero.

◆ mediaPlayerAudioDelayMs

Optional<int> agora::rtc::ChannelMediaOptions::mediaPlayerAudioDelayMs

The delay in ms for sending media player audio frames. This is used for explicit control of A/V sync. To switch off the delay, set the value to zero.

◆ token

Optional<const char*> agora::rtc::ChannelMediaOptions::token

The token

◆ enableBuiltInMediaEncryption

Optional<bool> agora::rtc::ChannelMediaOptions::enableBuiltInMediaEncryption

Enable media packet encryption. This parameter is ignored when calling function updateChannelMediaOptions()

  • false is default.

◆ publishRhythmPlayerTrack

Optional<bool> agora::rtc::ChannelMediaOptions::publishRhythmPlayerTrack

Determines whether to publish the sound of the rhythm player to remote users.

  • true: (Default) Publish the sound of the rhythm player.
  • false: Do not publish the sound of the rhythm player.

◆ isInteractiveAudience

Optional<bool> agora::rtc::ChannelMediaOptions::isInteractiveAudience

This mode is only used for audience. In PK mode, client might join one channel as broadcaster, and join another channel as interactive audience to achieve low lentancy and smooth video from remote user.

  • true: Enable low lentancy and smooth video when joining as an audience.
  • false: (Default) Use default settings for audience role.