AddIceObserver.java |
Interface to handle completion of addIceCandidate |
735 |
audio |
|
|
AudioDecoderFactoryFactory.java |
Implementations of this interface can create a native {@code webrtc::AudioDecoderFactory}.
|
728 |
AudioEncoderFactoryFactory.java |
Implementations of this interface can create a native {@code webrtc::AudioEncoderFactory}.
|
728 |
AudioProcessingFactory.java |
Factory for creating webrtc::AudioProcessing instances. |
718 |
AudioSource.java |
Java wrapper for a C++ AudioSourceInterface. Used as the source for one or
more {@code AudioTrack} objects.
|
806 |
AudioTrack.java |
Java wrapper for a C++ AudioTrackInterface |
1020 |
BuiltinAudioDecoderFactoryFactory.java |
Creates a native {@code webrtc::AudioDecoderFactory} with the builtin audio decoders.
|
808 |
BuiltinAudioEncoderFactoryFactory.java |
This class creates a native {@code webrtc::AudioEncoderFactory} with the builtin audio encoders.
|
819 |
CallSessionFileRotatingLogSink.java |
|
1367 |
Camera1Capturer.java |
|
1261 |
Camera1Enumerator.java |
captureToTexture |
7307 |
Camera2Capturer.java |
|
1431 |
Camera2Enumerator.java |
Checks if API is supported and all cameras have better than legacy support.
|
9626 |
CameraEnumerationAndroid.java |
|
8009 |
CameraEnumerator.java |
|
933 |
CameraVideoCapturer.java |
Base interface for camera1 and camera2 implementations. Extends VideoCapturer with a
switchCamera() function. Also provides subinterfaces for handling camera events, and a helper
class for detecting camera freezes.
|
6504 |
CapturerObserver.java |
Interface for observering a capturer. Passed to {@link VideoCapturer#initialize}. Provided by
{@link VideoSource#getCapturerObserver}.
All callbacks must be executed on a single thread.
|
948 |
CryptoOptions.java |
CryptoOptions defines advanced cryptographic settings for native WebRTC.
These settings must be passed into RTCConfiguration. WebRTC is secur by
default and you should not need to set any of these options unless you are
specifically looking for an additional crypto feature such as AES_GCM
support. This class is the Java binding of native api/crypto/cryptooptions.h
|
5058 |
DataChannel.java |
Java wrapper for a C++ DataChannelInterface. |
5452 |
Dav1dDecoder.java |
|
642 |
DefaultVideoDecoderFactory.java |
Helper class that combines HW and SW decoders.
|
2944 |
DtmfSender.java |
Java wrapper for a C++ DtmfSenderInterface. |
3633 |
EglBase.java |
Holds EGL state and utility methods for handling an egl 1.0 EGLContext, an EGLDisplay,
and an EGLSurface.
|
11663 |
EglBase10.java |
EGL 1.0 implementation of EglBase. |
968 |
EglBase14.java |
EGL 1.4 implementation of EglBase. |
854 |
EglRenderer.java |
Implements VideoSink by displaying the video stream on an EGL Surface. This class is intended to
be used as a helper class for rendering on SurfaceViews and TextureViews.
|
30365 |
EglThread.java |
EGL graphics thread that allows multiple clients to share the same underlying EGLContext. |
8191 |
EncodedImage.java |
An encoded frame from a video stream. Used as an input for decoders and as an output for
encoders.
|
4728 |
FecControllerFactoryFactoryInterface.java |
Factory for creating webrtc::FecControllerFactory instances.
|
746 |
FileVideoCapturer.java |
Read video data from file for the .y4m container.
|
6397 |
FrameDecryptor.java |
The FrameDecryptor interface allows Java API users to provide a
pointer to their native implementation of the FrameDecryptorInterface.
FrameDecryptors are extremely performance sensitive as they must process all
incoming video and audio frames. Due to this reason they should always be
backed by a native implementation
@note Not ready for production use.
|
943 |
FrameEncryptor.java |
The FrameEncryptor interface allows Java API users to provide a pointer to
their native implementation of the FrameEncryptorInterface.
FrameEncyptors are extremely performance sensitive as they must process all
outgoing video and audio frames. Due to this reason they should always be
backed by a native implementation.
@note Not ready for production use.
|
943 |
GlRectDrawer.java |
Simplest possible GL shader that just draws frames as opaque quads. |
1081 |
GlShader.java |
Enable and upload a vertex array for attribute `label`. The vertex data is specified in
`buffer` with `dimension` number of components per vertex.
|
5184 |
GlTextureFrameBuffer.java |
Helper class for handling OpenGL framebuffer with only color attachment and no depth or stencil
buffer. Intended for simple tasks such as texture copy, texture downscaling, and texture color
conversion. This class is not thread safe and must be used by a thread with an active GL context.
|
4285 |
GlUtil.java |
Some OpenGL static utility functions.
|
2256 |
HardwareVideoDecoderFactory.java |
Factory for Android hardware VideoDecoders. |
2301 |
IceCandidateErrorEvent.java |
The local IP address used to communicate with the STUN or TURN server. |
1676 |
JavaI420Buffer.java |
Implementation of VideoFrame.I420Buffer backed by Java direct byte buffers. |
6896 |
LibaomAv1Encoder.java |
|
735 |
LibvpxVp8Decoder.java |
|
675 |
LibvpxVp8Encoder.java |
|
735 |
LibvpxVp9Decoder.java |
|
692 |
LibvpxVp9Encoder.java |
|
781 |
MediaConstraints.java |
Description of media constraints for {@code MediaStream} and
{@code PeerConnection}.
|
2486 |
MediaSource.java |
Java wrapper for a C++ MediaSourceInterface. |
1957 |
MediaStreamTrack.java |
Java wrapper for a C++ MediaStreamTrackInterface. |
3533 |
Metrics.java |
Class holding histogram information.
|
2404 |
NativeLibraryLoader.java |
Interface for loading native libraries. A custom loader can be passed to
PeerConnectionFactory.initialize.
|
721 |
NativePeerConnectionFactory.java |
Factory for creating webrtc::jni::OwnedPeerConnection instances. |
737 |
NetEqFactoryFactory.java |
Implementations of this interface can create a native {@code webrtc::NetEqFactory}.
|
700 |
PlatformSoftwareVideoDecoderFactory.java |
Factory for Android platform software VideoDecoders. |
1392 |
Predicate.java |
Represents a predicate (boolean-valued function) of one argument.
|
2350 |
RefCounted.java |
Interface for ref counted objects in WebRTC. These objects have significant resources that need
to be freed when they are no longer in use. Each objects starts with ref count of one when
created. If a reference is passed as a parameter to a method, the caller has ownesrship of the
object by default - calling release is not necessary unless retain is called.
|
1078 |
RendererCommon.java |
Static helper functions for renderer implementations.
|
10897 |
RenderSynchronizer.java |
Class to synchronize rendering updates with display refresh cycles and save power by blocking
updates that exceeds the target frame rate.
|
4124 |
ScreenCapturerAndroid.java |
An implementation of VideoCapturer to capture the screen content as a video stream.
Capturing is done by {@code MediaProjection} on a {@code SurfaceTexture}. We interact with this
{@code SurfaceTexture} using a {@code SurfaceTextureHelper}.
The {@code SurfaceTextureHelper} is created by the native code and passed to this capturer in
{@code VideoCapturer.initialize()}. On receiving a new frame, this capturer passes it
as a texture to the native code via {@code CapturerObserver.onFrameCaptured()}. This takes
place on the HandlerThread of the given {@code SurfaceTextureHelper}. When done with each frame,
the native code returns the buffer to the {@code SurfaceTextureHelper} to be used for new
frames. At any time, at most one frame is being processed.
|
8576 |
SdpObserver.java |
Interface for observing SDP-related events. |
954 |
SessionDescription.java |
Description of an RFC 4566 Session.
SDPs are passed as serialized Strings in Java-land and are materialized
to SessionDescriptionInterface as appropriate in the JNI layer.
|
1472 |
SoftwareVideoDecoderFactory.java |
|
1684 |
SoftwareVideoEncoderFactory.java |
|
1793 |
SSLCertificateVerifier.java |
The SSLCertificateVerifier interface allows API users to provide custom
logic to verify certificates.
|
989 |
StatsObserver.java |
Interface for observing Stats reports (see webrtc::StatsObservers). |
649 |
StatsReport.java |
Java version of webrtc::StatsReport. |
1797 |
SurfaceEglRenderer.java |
Display the video stream on a Surface.
renderFrame() is asynchronous to avoid blocking the calling thread.
This class is thread safe and handles access from potentially three different threads:
Interaction from the main app in init, release and setMirror.
Interaction from C++ rtc::VideoSinkInterface in renderFrame.
Interaction from SurfaceHolder lifecycle in surfaceCreated, surfaceChanged, and surfaceDestroyed.
|
5406 |
SurfaceTextureHelper.java |
Helper class for using a SurfaceTexture to create WebRTC VideoFrames. In order to create WebRTC
VideoFrames, render onto the SurfaceTexture. The frames will be delivered to the listener. Only
one texture frame can be in flight at once, so the frame must be released in order to receive a
new frame. Call stopListening() to stop receiveing new frames. Call dispose to release all
resources once the texture frame is released.
|
14538 |
SurfaceViewRenderer.java |
Display the video stream on a SurfaceView.
|
10582 |
TextureBufferImpl.java |
Android texture buffer that glues together the necessary information together with a generic
release callback. ToI420() is implemented by providing a Handler and a YuvConverter.
|
6673 |
TimestampAligner.java |
The TimestampAligner class helps translating camera timestamps into the same timescale as is
used by rtc::TimeNanos(). Some cameras have built in timestamping which is more accurate than
reading the system clock, but using a different epoch and unknown clock drift. Frame timestamps
in webrtc should use rtc::TimeNanos (system monotonic time), and this class provides a filter
which lets us use the rtc::TimeNanos timescale, and at the same time take advantage of higher
accuracy of the camera clock. This class is a wrapper on top of rtc::TimestampAligner.
|
2400 |
TurnCustomizer.java |
Java wrapper for a C++ TurnCustomizer. |
1227 |
VideoCapturer.java |
This function is used to initialize the camera thread, the android application context, and the
capture observer. It will be called only once and before any startCapture() request. The
camera thread is guaranteed to be valid until dispose() is called. If the VideoCapturer wants
to deliver texture frames, it should do this by rendering on the SurfaceTexture in
{@code surfaceTextureHelper}, register itself as a listener, and forward the frames to
CapturerObserver.onFrameCaptured(). The caller still has ownership of {@code
surfaceTextureHelper} and is responsible for making sure surfaceTextureHelper.dispose() is
called. This also means that the caller can reuse the SurfaceTextureHelper to initialize a new
VideoCapturer once the previous VideoCapturer has been disposed.
|
2142 |
VideoCodecInfo.java |
Represent a video codec as encoded in SDP.
|
2539 |
VideoCodecStatus.java |
Status codes reported by video encoding/decoding components. This should be kept in sync with
video_error_codes.h.
|
1009 |
VideoDecoder.java |
Interface for a video decoder that can be used in WebRTC. All calls to the class will be made on
a single decoding thread.
|
3389 |
VideoDecoderFactory.java |
Factory for creating VideoDecoders. |
926 |
VideoDecoderFallback.java |
A combined video decoder that falls back on a secondary decoder if the primary decoder fails.
|
1063 |
VideoEncoder.java |
Interface for a video encoder that can be used with WebRTC. All calls will be made on the
encoding thread. The encoder may be constructed on a different thread and changing thread after
calling release is allowed.
|
12764 |
VideoEncoderFactory.java |
Factory for creating VideoEncoders. |
2573 |
VideoEncoderFallback.java |
A combined video encoder that falls back on a secondary encoder if the primary encoder fails.
|
1159 |
VideoFileRenderer.java |
Can be used to save the video frames to file.
|
6006 |
VideoFrame.java |
Java version of webrtc::VideoFrame and webrtc::VideoFrameBuffer. A difference from the C++
version is that no explicit tag is used, and clients are expected to use 'instanceof' to find the
right subclass of the buffer. This allows clients to create custom VideoFrame.Buffer in
arbitrary format in their custom VideoSources, and then cast it back to the correct subclass in
their custom VideoSinks. All implementations must also implement the toI420() function,
converting from the underlying representation if necessary. I420 is the most widely accepted
format and serves as a fallback for video sinks that can only handle I420, e.g. the internal
WebRTC software encoders.
|
7880 |
VideoFrameBufferType.java |
|
871 |
VideoFrameDrawer.java |
Helper class to draw VideoFrames. Calls either drawer.drawOes, drawer.drawRgb, or
drawer.drawYuv depending on the type of the buffer. The frame will be rendered with rotation
taken into account. You can supply an additional render matrix for custom transformations.
|
9947 |
VideoProcessor.java |
Lightweight abstraction for an object that can receive video frames, process them, and pass them
on to another object. This object is also allowed to observe capturer start/stop.
|
2799 |
VideoSink.java |
Java version of rtc::VideoSinkInterface.
|
819 |
VideoSource.java |
Java wrapper of native AndroidVideoTrackSource.
|
6015 |
VideoTrack.java |
Java version of VideoTrackInterface. |
2531 |
WrappedNativeVideoDecoder.java |
Wraps a native webrtc::VideoDecoder.
|
1212 |
WrappedNativeVideoEncoder.java |
Wraps a native webrtc::VideoEncoder.
|
1582 |
YuvConverter.java |
Class for converting OES textures to a YUV ByteBuffer. It can be constructed on any thread, but
should only be operated from a single thread with an active EGL context.
|
9854 |
YuvHelper.java |
Wraps libyuv methods to Java. All passed byte buffers must be direct byte buffers. |
11261 |