Package com.twilio.video
Class Room
java.lang.Object
com.twilio.video.Room
- All Implemented Interfaces:
AudioProcessorSupportCheck
A Room represents a media session with zero or more remote Participants. Media shared by any one
RemoteParticipant is distributed equally to all other Participants.
A subset of Android devices provide an OpenSLES implementation. Although more efficient,
the use of OpenSLES occasionally results in echo. As a result, the Video SDK disables OpenSLES by
default unless explicitly enabled. To enable OpenSLES, execute the following before invoking
Video.connect(...)
tvi.webrtc.voiceengine.WebRtcAudioManager.setBlacklistDeviceForOpenSLESUsage(false)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceListener definition of room related events.static enumRepresents the current state of aRoom. -
Method Summary
Modifier and TypeMethodDescriptionvoidDisconnects from the room.Returns the dominant speaker of theRoom.Returns the current local participant.Returns the region where media is processed.getName()Returns the name of the current room.Returns all currently connected participants.getSid()Returns the SID of the current room.getState()Returns the current room state.voidgetStats(StatsListener statsListener) Retrieve stats for all media tracks and notifyStatsListenervia calling thread.booleanisAudioProcessorSupported(String audioProcessorName) DO NOT USE, For internal use only, verifies if audio processor is supported.booleanReturns whether any media in the Room is being recorded.
-
Method Details
-
getName
Returns the name of the current room. This method will return the SID if the room was created without a name. -
getSid
Returns the SID of the current room. -
getMediaRegion
Returns the region where media is processed. This property is set in Group Rooms by the time theRoomreachesRoom.State.CONNECTED. This method returnsnullunder the following conditions:- The
Roomhas not reached theRoom.State.CONNECTEDstate. - The instance represents a peer-to-peer Room.
- The
-
getState
Returns the current room state. -
getDominantSpeaker
Returns the dominant speaker of theRoom.To enable this feature, add an invocation of
ConnectOptions.Builder.enableDominantSpeakerwithtruewhen building yourConnectOptions. This method returnsnullwhen one of the following conditions are true:- The
Roomtopology is P2P. - The dominant speaker feature was not enabled via
ConnectOptions.Builder.enableDominantSpeaker. - There is currently no dominant speaker.
- The
-
isRecording
public boolean isRecording()Returns whether any media in the Room is being recorded. -
getRemoteParticipants
Returns all currently connected participants.- Returns:
- list of participants.
-
getLocalParticipant
Returns the current local participant. If the room has not reachedRoom.State.CONNECTEDthen this method will return null. -
getStats
Retrieve stats for all media tracks and notifyStatsListenervia calling thread. In case where room is inRoom.State.DISCONNECTEDstate, reports won't be delivered.- Parameters:
statsListener- listener that receives stats reports for all media tracks.
-
disconnect
public void disconnect()Disconnects from the room. -
isAudioProcessorSupported
DO NOT USE, For internal use only, verifies if audio processor is supported.- Specified by:
isAudioProcessorSupportedin interfaceAudioProcessorSupportCheck
-