All Classes and Interfaces

Class
Description
Interface to handle completion of addIceCandidate
Abstract base class for audio codecs.
Implementations of this interface can create a native webrtc::AudioDecoderFactory.
AudioDevice interface allows developers to inject custom audio device capturer and audio device renderer of audio by replacing the default device used by the SDK.
AudioDeviceCapturer interface provides the mechanism to define a custom audio device capturer.
An AudioDeviceContext is a context to the audio device used by the SDK.
This interface is a thin wrapper on top of a native C++ webrtc::AudioDeviceModule (ADM).
AudioDeviceRenderer interface provides the mechanism to define a custom audio device renderer.
Implementations of this interface can create a native webrtc::AudioEncoderFactory.
AudioFormat describes 16-bit signed Linear Pulse Code Modulation (LPCM) audio.
Represents options when adding a LocalAudioTrack.
Builds new AudioOptions.
Factory for creating webrtc::AudioProcessing instances.
DO NOT USE, For internal use only, verifies if audio processor is supported.
AudioSink consumes raw audio content from a AudioTrack.
Java wrapper for a C++ AudioSourceInterface.
 
Java wrapper for a C++ AudioTrackInterface
A published audio track represents an audio track that has been shared with a Room.
BandwidthProfileMode specifies how RemoteVideoTrack(s) TrackPriority values are mapped to bandwidth allocation in Group Rooms.
BandwidthProfileOptions enables you to configure how available bandwidth is shared among the Tracks in a Group Room.
 
Creates a native webrtc::AudioDecoderFactory with the builtin audio decoders.
This class creates a native webrtc::AudioEncoderFactory with the builtin audio encoders.
CalledByNative is used by the JNI generator to create the necessary JNI bindings and expose this method to native code.
CalledByNativeUnchecked is used to generate JNI bindings that do not check for exceptions.
 
 
 
 
The Camera2Capturer class is used to provide video frames for a LocalVideoTrack from the provided Camera2Capturer.cameraId.
 
Camera2Capturer exception class.
 
Interface that provides events and errors related to Camera2Capturer.
 
 
The CameraCapturer class is used to provide video frames for a LocalVideoTrack from a given CameraCapturer.cameraId.
 
Interface that provides events and errors related to CameraCapturer.
 
 
 
 
Interface for updating Camera.Parameters on a CameraCapturer.
 
 
 
 
Base interface for camera1 and camera2 implementations.
Camera events handler - can be used to be notifed about camera events.
Helper class to log framerate and detect if the camera freezes.
Camera switch handler - one of these functions are invoked with the result of switchCamera().
Deprecated.
Representation of a change in selected ICE candidate pair.
Interface for updating the CaptureRequest of a Camera2Capturer.
Interface for observering a capturer.
Configures the mode for switching off/on subscribed RemoteVideoTracks based on the subscriber's rendering environment.
Represents options when connecting to a Room.
Build new ConnectOptions.
CryptoOptions defines advanced cryptographic settings for native WebRTC.
 
Java wrapper for a C++ DataChannelInterface.
Java version of C++ DataBuffer.
Java wrapper for WebIDL RTCDataChannel.
Java version of C++ DataChannelObserver.
Keep in sync with DataChannelInterface::DataState.
Base representation of LocalDataTrack and RemoteDataTrack.
Represents options when creating LocalDataTracks.
Build new DataTrackOptions.
A published data track represents a data track that has been shared with a Room.
 
By default, the Video SDK uses DefaultAudioDevice to capture and render audio.
Helper class that combines HW and SW decoders.
Helper class that combines HW and SW encoders.
Java wrapper for a C++ DtmfSenderInterface.
Holds EGL state and utility methods for handling an egl 1.0 EGLContext, an EGLDisplay, and an EGLSurface.
 
 
EGL 1.0 implementation of EglBase.
 
EGL 1.4 implementation of EglBase.
 
Implements VideoSink by displaying the video stream on an EGL Surface.
Callback for clients to be notified about errors encountered during rendering.
 
An encoded frame from a video stream.
 
 
Defines audio and video encoding parameters.
Factory for creating webrtc::FecControllerFactory instances.
 
The FrameDecryptor interface allows Java API users to provide a pointer to their native implementation of the FrameDecryptorInterface.
The FrameEncryptor interface allows Java API users to provide a pointer to their native implementation of the FrameEncryptorInterface.
ITU-T standard 7 kHz Wideband audio codec.
Simplest possible GL shader that just draws frames as opaque quads.
 
Helper class for handling OpenGL framebuffer with only color attachment and no depth or stencil buffer.
Some OpenGL static utility functions.
 
Block-oriented motion-compensation-based video compression standard.
Factory for Android hardware VideoDecoders.
Factory for android hardware video encoders.
Representation of a single ICE Candidate, mirroring IceCandidateInterface in the C++ API.
 
ICE candidate pair state as defined in RFC 5245.
Statistics of ICE candidate pair as defined in Identifiers for WebRTC's Statistics API.
Statistics of ICE candidate as defined in Identifiers for WebRTC's Statistics API
IceOptions specifies custom media connectivity configurations.
 
IceServer is a single STUN or TURN server.
IceTransportPolicy specifies which ICE transports to allow.
AudioDeviceModule implemented using android.media.AudioRecord as input and android.media.AudioTrack as output.
 
 
Called when audio recording starts and stops.
Contains audio sample information.
 
 
Called when audio playout starts and stops.
 
Called when new audio samples are ready.
Implementation of VideoFrame.I420Buffer backed by Java direct byte buffers.
Class with static JNI helper functions that are used in many places.
Deprecated.
 
 
 
 
 
Represents a local audio source.
A local audio track publication represents a LocalAudioTrack that has been shared to a Room.
 
A data track represents a unidirectional data source that can be used to send messages to participants of a Room.
A local data track publication represents a LocalDataTrack that has been shared to a Room.
Represents the local participant of a Room you are connected to.
Interface that provides LocalParticipant events.
Options that can be specified when publishing a local track.
 
A local video track that receives video frames from a VideoCapturer or VideoCapturer.
A local video track publication represents a LocalVideoTrack that has been shared to a Room.
 
Log levels for the SDK
Modules that can be logged in the SDK
Description of media constraints for MediaStream and PeerConnection.
Simple String key/value pair.
Java wrapper for a C++ MediaSourceInterface.
Tracks MediaSourceInterface.SourceState
Java wrapper for a C++ MediaStreamInterface.
Java wrapper for a C++ MediaStreamTrackInterface.
 
Tracks MediaStreamTrackInterface.TrackState
 
Class holding histogram information.
Interface for loading native libraries.
Factory for creating webrtc::jni::OwnedPeerConnection instances.
Implementations of this interface can create a native webrtc::NetEqFactory.
Interface for detecting network changes
 
 
Java version of NetworkMonitor.NetworkInformation
Observer interface by which observer is notified of network changes.
 
Factory for creating webrtc::NetworkControllerFactory instances.
NetworkQualityConfiguration allows you to specify verbosity levels of Network Quality information returned by the Network Quality API.
Twilio's Video SDKs, where possible, attempt to calculate a singular Network Quality Level describing the quality of a Participant's connection to a Room.
The verbosity level of Network Quality information for a Participant.
Factory for creating webrtc::NetworkStatePredictorFactory instances.
 
 
Lossy audio coding format.
Interface that represents user in a Room.
The state of the signaling connection for a Participant.
ITU-T standard for audio companding.
ITU-T standard for audio companding.
Java-land version of the PeerConnection APIs; wraps the C++ API http://www.webrtc.org/reference/native-apis, which in turn is inspired by the JS APIs: http://dev.w3.org/2011/webrtc/editor/webrtc.html and http://www.w3.org/TR/mediacapture-streams/
 
Java version of PeerConnectionInterface.BundlePolicy
Java version of PeerConnectionInterface.CandidateNetworkPolicy
Java version of PeerConnectionInterface.ContinualGatheringPolicy
Tracks PeerConnectionInterface::IceConnectionState
Tracks PeerConnectionInterface::IceGatheringState
Java version of PeerConnectionInterface.IceServer.
 
Java version of PeerConnectionInterface.IceTransportsType
Java version of rtc::KeyType
Java version of PeerConnectionObserver.
Tracks PeerConnectionInterface::PeerConnectionState
Java version of webrtc::PortPrunePolicy
Java version of PeerConnectionInterface.RTCConfiguration
Java version of PeerConnectionInterface.RtcpMuxPolicy
Java version of webrtc::SdpSemantics.
Tracks PeerConnectionInterface::SignalingState
Java version of PeerConnectionInterface.TcpCandidatePolicy
Tracks PeerConnectionInterface::TlsCertPolicy
PeerConnectionDependencies holds all PeerConnection dependencies that are applied per PeerConnection.
 
Java wrapper for a C++ PeerConnectionFactoryInterface.
 
 
 
 
Factory for Android platform software VideoDecoders.
Represents a predicate (boolean-valued function) of one argument.
Interface for ref counted objects in WebRTC.
A remote audio track represents a remote audio source.
A remote audio track publication represents a RemoteAudioTrack that has been shared to a Room.
 
A remote data track represents a unidirectional remote data source from which messages can be received from a participant.
Interface that provides RemoteDataTrack events.
A remote data track publication represents a RemoteDataTrack.
A participant represents a remote user that can connect to a Room.
Interface that provides RemoteParticipant events.
 
A remote video track represents a remote video source.
A remote video track publication represents a RemoteVideoTrack that has been shared to a Room.
 
Static helper functions for renderer implementations.
Interface for rendering frames on an EGLSurface with specified viewport location.
Interface for reporting rendering events.
 
Helper class for determining layout size based on layout requirements, scaling type, and video aspect ratio.
A frame buffer that represents an image in the ARGB format with 8 bits of of precision.
A Room represents a media session with zero or more remote Participants.
Listener definition of room related events.
Represents the current state of a Room.
Easily storable/serializable version of a native C++ RTCCertificatePEM.
Java version of webrtc::RTCStats.
RtcStatsAdapter represents the Java layer object that manages the delivery of RtcStatsReports to the RtcStatsListeners.
Interface for receiving stats reports (see webrtc::RTCStatsCollectorCallback).
Java version of webrtc::RTCStatsReport.
The parameters for an RtpSender, as defined in http://w3c.github.io/webrtc-pc/#rtcrtpsender-interface.
 
 
 
 
 
Java wrapper for a C++ RtpReceiverInterface.
Java wrapper for a C++ RtpReceiverObserverInterface
Java wrapper for a C++ RtpSenderInterface.
Java wrapper for a C++ RtpTransceiverInterface.
Java version of webrtc::RtpTransceiverDirection - the ordering must be kept in sync.
Tracks webrtc::RtpTransceiverInit.
The ScreenCapturer class is used to provide video frames for a LocalVideoTrack from a device's screen.
Interface that provides events and errors related to ScreenCapturer.
An implementation of VideoCapturer to capture the screen content as a video stream.
Interface for observing SDP-related events.
Description of an RFC 4566 Session.
Java-land enum version of SessionDescriptionInterface's type() string.
 
 
The SSLCertificateVerifier interface allows API users to provide custom logic to verify certificates.
Interface that provides event related to Room.getStats(StatsListener)
Interface for observing Stats reports (see webrtc::StatsObservers).
Stats report contains stats for all the media tracks that exist in peer connection.
Java version of webrtc::StatsReport.
Java version of webrtc::StatsReport::Value.
Display the video stream on a Surface.
Helper class for using a SurfaceTexture to create WebRTC VideoFrames.
Interface for monitoring texture buffers created from this SurfaceTexture.
Display the video stream on a SurfaceView.
Android texture buffer that glues together the necessary information together with a generic release callback.
The TimestampAligner class helps translating camera timestamps into the same timescale as is used by rtc::TimeNanos().
A representation of a media track.
Defines the three possible track publication priorities for a local TrackPublication.
A published track represents a track that has been shared with a Room.
TrackSwitchOffMode represents the possible modes of behavior of the Track switch-off mechanism.
Java wrapper for a C++ TurnCustomizer.
Twilio Video SDK Exception
 
This class allows a user to connect to a Room.
VideoBandwidthProfileOptions enables you to configure how available bandwidth is shared among the RemoteVideoTrack(s) in a Group Room.
Builder class for VideoBandwidthProfileOptions.
Generic video capturing interface that extends VideoCapturer.
 
Observe a Video Capturer for change in capture parameters such as change in width, height, and rotation.
Abstract base class for video codecs.
Represent a video codec as encoded in SDP.
Status codes reported by video encoding/decoding components.
The preferences that are used to specify the render dimensions of a RemoteVideoTrack when using VideoContentPreferencesMode.MANUAL.
Configures the mode for specifying content preferences for the RemoteVideoTrack.
Interface for a video decoder that can be used in WebRTC.
 
Additional info for decoding.
Settings passed to the decoder by WebRTC.
Factory for creating VideoDecoders.
A combined video decoder that falls back on a secondary decoder if the primary decoder fails.
 
Interface for a video encoder that can be used with WebRTC.
Represents bitrate allocated for an encoder to produce frames.
 
Capabilities (loss notification, etc.) passed to the encoder by WebRTC.
Codec specific information about the encoded frame.
 
 
 
 
Additional info for encoding.
Metadata about the Encoder.
Rate control parameters.
Bitrate limits for resolution.
Settings for WebRTC quality based scaling.
Settings passed to the encoder by WebRTC.
Factory for creating VideoEncoders.
 
A combined video encoder that falls back on a secondary encoder if the primary encoder fails.
VideoEncodingMode describes how publishers manage video codecs and video encodings.
Can be used to save the video frames to file.
Represents the format of a video frame.
Java version of webrtc::VideoFrame and webrtc::VideoFrameBuffer.
Implements image storage medium.
Interface for I420 buffers.
Interface for buffers that are stored as a single texture, either in OES or RGB format.
 
Helper class to draw VideoFrames.
Lightweight abstraction for an object that can receive video frames, process them, and pass them on to another object.
 
Specifies what type of video scaling that will be performed by a VideoSink.
VideoSink implements webrtc.VideoSink interface.
Java version of rtc::VideoSinkInterface.
Java wrapper of native AndroidVideoTrackSource.
Simple aspect ratio clas for use in constraining output format.
 
 
Java version of VideoTrackInterface.
A published video track represents a video track that has been shared with a Room.
A VideoView renders frames from a VideoTrack.
Traditional block-based transform coding format similar to H264.
Traditional block-based transform coding format similar to MPEG's High Efficiency Video Coding (HEVC/H.265).
Wraps a native webrtc::VideoDecoder.
Wraps a native webrtc::VideoEncoder.
Class for converting OES textures to a YUV ByteBuffer.
Wraps libyuv methods to Java.