Specifying a Video Format - Android 6.x
You can customize a VideoCapturer
by setting a VideoFormat
when creating a LocalVideoTrack
. You can set the video dimensions and frame rate of your choice and the capturer is responsible for capturing as close as possible to your specified format. The VideoFormat
provided to LocalVideoTrack.create(...)
takes highest priority over the format returned by VideoCapturer.getCaptureFormat()
. The default format for video tracks is 640x480 at 30 FPS. Note that your VideoFormat
is used to select a capture format, but the actual video sent to Participants may be cropped and/or downscaled in response to network and device conditions.
// Create camera capturer
CameraCapturer cameraCapturer = new CameraCapturer(context, CameraCapturer.CameraSource.FRONT_CAMERA);
// Setup video format
VideoFormat videoFormat = new VideoFormat(VideoDimensions.HD_720P_VIDEO_DIMENSIONS, 30);
// Add a video track with the format
LocalVideoTrack localVideoTrack = LocalVideoTrack.create(context, true, cameraCapturer, videoFormat);
// If the format is not satisfied a null track will be returned
if (localVideoTrack == null) {
Log.e(TAG, "Unable to satisfy the format");
}
Need some help?
We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.