Package com.opentok.android
Class BaseVideoCapturer
java.lang.Object
com.opentok.android.BaseVideoCapturer
Defines a video capturer to be used by a
PublisherKit object.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDefines the capture settings for a video capturer.static interfaceAn interface for defining how theBaseVideoCapturer.CaptureSwitch.cycleCamera()method of a Publisher object that implements a custom video capturer.static enumDefines the content hint settings for a video capturer. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intDefines the value for the ABGR pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the ARGB pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the BGRA pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.protected booleanstatic final intDefines the value for the MJPEG pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the NV12 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the NV21 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the RGB pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the RGBA pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the UYVY pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the YUV420P pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.static final intDefines the value for the YUY2 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract voiddestroy()Destroys the BaseVideoCapturer object.abstract BaseVideoCapturer.CaptureSettingsReturns the settings for the video capturer.Returns the video content hint setting.abstract voidinit()Initializes the video capturer.abstract booleanWhether video is being captured (true) or not (false).protected voidonCameraChanged(int cameraID) protected voidonCaptureError(Exception exp) abstract voidonPause()Call this method when the activity pauses.voidCall this method when the activity is restarted.abstract voidonResume()Call this method when the activity resumes.voidonStop()Call this method when the activity stops.voidprovideBufferFrame(ByteBuffer buffer, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as a byte buffer.voidprovideBufferFrame(ByteBuffer buffer, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as a byte buffer.voidprovideBufferFramePlanar(ByteBuffer yplane, ByteBuffer uplane, ByteBuffer vplane, int yPixelStride, int yRowStride, int uPixelStride, int uRowStride, int vPixelStride, int vRowStride, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as 3 bytebuffer planes.voidprovideBufferFramePlanar(ByteBuffer yplane, ByteBuffer uplane, ByteBuffer vplane, int yPixelStride, int yRowStride, int uPixelStride, int uRowStride, int vPixelStride, int vRowStride, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as 3 bytebuffer planes.voidprovideByteArrayFrame(byte[] data, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as a byte array.voidprovideByteArrayFrame(byte[] data, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as a byte array.voidprovideIntArrayFrame(int[] data, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as an array of integers.voidprovideIntArrayFrame(int[] data, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as an array of integers.protected voidsetPublisherKit(PublisherKit publisher) voidsetVideoContentHint(BaseVideoCapturer.VideoContentHint contentHint) Sets the video content hint.abstract intStarts capturing video.abstract intStops capturing video.
-
Field Details
-
frameMirrorX
protected boolean frameMirrorX -
NV21
public static final int NV21Defines the value for the NV21 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
ARGB
public static final int ARGBDefines the value for the ARGB pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
YUV420P
public static final int YUV420PDefines the value for the YUV420P pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
NV12
public static final int NV12Defines the value for the NV12 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
YUY2
public static final int YUY2Defines the value for the YUY2 pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
UYVY
public static final int UYVYDefines the value for the UYVY pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
BGRA
public static final int BGRADefines the value for the BGRA pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
RGB
public static final int RGBDefines the value for the RGB pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
MJPEG
public static final int MJPEGDefines the value for the MJPEG pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
ABGR
public static final int ABGRDefines the value for the ABGR pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
RGBA
public static final int RGBADefines the value for the RGBA pixel format used by theBaseVideoCapturer.CaptureSettings.formatproperty.- See Also:
-
-
Constructor Details
-
BaseVideoCapturer
public BaseVideoCapturer()
-
-
Method Details
-
setVideoContentHint
Sets the video content hint. Valid values are defined in theBaseVideoCapturer.VideoContentHintenum. The default setting isBaseVideoCapturer.VideoContentHint.NONE.- Parameters:
contentHint- The video content hint.
-
getVideoContentHint
Returns the video content hint setting.- Returns:
- The video content hint setting.
- See Also:
-
init
public abstract void init()Initializes the video capturer. -
startCapture
public abstract int startCapture()Starts capturing video. -
stopCapture
public abstract int stopCapture()Stops capturing video. -
destroy
public abstract void destroy()Destroys the BaseVideoCapturer object. -
isCaptureStarted
public abstract boolean isCaptureStarted()Whether video is being captured (true) or not (false). -
getCaptureSettings
Returns the settings for the video capturer. -
onPause
public abstract void onPause()Call this method when the activity pauses. When you override this method, implement code to respond to the activity being paused. For example, you may pause capturing audio or video.- See Also:
-
onResume
public abstract void onResume()Call this method when the activity resumes. When you override this method, implement code to respond to the activity being resumed. For example, you may resume capturing audio or video.- See Also:
-
onStop
public void onStop()Call this method when the activity stops. When you override this method, implement code to respond to the activity being stopped. For example, you may release all the resources this capture owns like the camera capturing session.- See Also:
-
onRestart
public void onRestart()Call this method when the activity is restarted. When you override this method, implement code to respond to the activity being restarted. For example, you may restart video capturing.- See Also:
-
provideByteArrayFrame
public void provideByteArrayFrame(byte[] data, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as a byte array.- Parameters:
data- The video frame data, as a byte array.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).
-
provideByteArrayFrame
public void provideByteArrayFrame(byte[] data, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as a byte array.- Parameters:
data- The video frame data, as a byte array.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).metadata- The video frame metadata to be associated with the frame, as a byte array. The maximum size allowed is 32 bytes.
-
provideIntArrayFrame
public void provideIntArrayFrame(int[] data, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as an array of integers.- Parameters:
data- The video frame data, as an array of integers.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).
-
provideIntArrayFrame
public void provideIntArrayFrame(int[] data, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as an array of integers.- Parameters:
data- The video frame data, as an array of integers.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).metadata- The video frame metadata to be associated with the frame, as a byte array. The maximum size allowed is 32 bytes.
-
provideBufferFrame
public void provideBufferFrame(ByteBuffer buffer, int format, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as a byte buffer.- Parameters:
buffer- The video frame data, as a byte buffer.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).
-
provideBufferFrame
public void provideBufferFrame(ByteBuffer buffer, int format, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as a byte buffer. This version of the method includes ametadataparameter, for including frame metadata.- Parameters:
buffer- The video frame data, as a byte buffer.format- The video format, as defined by theARGBandNV21constants.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).metadata- The video frame metadata to be associated with the frame, as a byte array. The maximum size allowed is 32 bytes.
-
provideBufferFramePlanar
public void provideBufferFramePlanar(ByteBuffer yplane, ByteBuffer uplane, ByteBuffer vplane, int yPixelStride, int yRowStride, int uPixelStride, int uRowStride, int vPixelStride, int vRowStride, int width, int height, int rotation, boolean mirrorX) Provide a frame of video as 3 bytebuffer planes.- Parameters:
yplane- The y video frame data, as a byte buffer.uplane- The u video frame data, as a byte buffer.vplane- The v video frame data, as a byte buffer.yPixelStride- The y pixel stride, in bytes.yRowStride- The y row stride, in bytes.uPixelStride- The u pixel stride, in bytes.uRowStride- The u row stride, in bytes.vPixelStride- The v pixel stride, in bytes.vRowStride- The v row stride, in bytes.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).
-
provideBufferFramePlanar
public void provideBufferFramePlanar(ByteBuffer yplane, ByteBuffer uplane, ByteBuffer vplane, int yPixelStride, int yRowStride, int uPixelStride, int uRowStride, int vPixelStride, int vRowStride, int width, int height, int rotation, boolean mirrorX, byte[] metadata) Provide a frame of video as 3 bytebuffer planes. This version of the method includes ametadataparameter, for including frame metadata.- Parameters:
yplane- The y video frame data, as a byte buffer.uplane- The u video frame data, as a byte buffer.vplane- The v video frame data, as a byte buffer.yPixelStride- The y pixel stride, in bytes.yRowStride- The y row stride, in bytes.uPixelStride- The u pixel stride, in bytes.uRowStride- The u row stride, in bytes.vPixelStride- The v pixel stride, in bytes.vRowStride- The v row stride, in bytes.width- The width of the video frame, in pixels.height- The height of the video frame, in pixels.rotation- The rotation of the video frame. Valid values are defined by constants in the android.view.Surface class.mirrorX- Whether to mirror the video on the x-axis (true) or not (false).metadata- The video frame metadata to be associated with the frame, as a byte array. The maximum size allowed is 32 bytes.
-
onCaptureError
-
onCameraChanged
protected void onCameraChanged(int cameraID) -
setPublisherKit
-