ICustomVideoSource
Interface that represents alternative video frame source for a call. The interface may be used to send video frames from alternative to camera video source.
Methods
release
void
release()
Releases the CustomVideoSource instance.
Returns
type:
void
sendFrame
void
sendFrame(byte[]
frame, int
width, int
height)
Sends a video frame. The video frame should be in the I420 format.
Parameters
frame:
byte[]
Video frame in the I420 format
width:
int
Video frame width
height:
int
Video frame height
Returns
type:
void
Throws
IllegalArgumentException if width and height do not match video frame width and height
sendFrame
void
sendFrame(int
textureId, int
width, int
height)
Sends a video frame. The texture should be in the RGB format.
Parameters
textureId:
int
RGB Texture handle
width:
int
Video frame width
height:
int
Video frame height
Returns
type:
void
setCustomVideoSourceListener
void
setCustomVideoSourceListener( listener)
Sets an ICustomVideoSourceListener to monitor its events.
Parameters
listener:
ICustomVideoSourceListener instance
Returns
type:
void
setSurfaceTextureHelper
void
setSurfaceTextureHelper(SurfaceTextureHelper
helper)
Sets a WebRTC SurfaceTextureHelper created externally on the application side.
SurfaceTextureHelper may be used to send video frames previously rendered to a surface, for example, from external implementation of android Camera and its preview.
SurfaceTextureHelper should be created with a shared ClientConfig.eglBase context.
This context is used for video encoding/decoding and video rendering.
Parameters
helper:
SurfaceTextureHelper
SurfaceTextureHelper instance
Returns
type:
void