EncodedVideoFrameInfo
Information about externally encoded video frames.
public class EncodedVideoFrameInfo { public int codecType; public int width; public int height; public int framesPerSecond; public int frameType; public int rotation; public int trackId; public long captureTimeMs; public int uid; public int streamType; public EncodedVideoFrameInfo() { codecType = Constants.VIDEO_CODEC_H264; width = 0; height = 0; framesPerSecond = 0; frameType = Constants.VIDEO_FRAME_TYPE_BLANK_FRAME; rotation = Constants.VIDEO_ORIENTATION_0; trackId = 0; captureTimeMs = 0; uid = 0; streamType = Constants.VIDEO_STREAM_HIGH; } @CalledByNative public EncodedVideoFrameInfo(int codecType, int width, int height, int framesPerSecond, int frameType, int rotation, int trackId, long captureTimeMs, int uid, int streamType) { this.codecType = codecType; this.width = width; this.height = height; this.framesPerSecond = framesPerSecond; this.frameType = frameType; this.rotation = rotation; this.trackId = trackId; this.captureTimeMs = captureTimeMs; this.uid = uid; this.streamType = streamType; } @CalledByNative public int getCodecType() { return codecType; } @CalledByNative public int getWidth() { return width; } @CalledByNative public int getHeight() { return height; } @CalledByNative public int getFramesPerSecond() { return framesPerSecond; } @CalledByNative public int getFrameType() { return frameType; } @CalledByNative public int getRotation() { return rotation; } @CalledByNative public int getTrackId() { return trackId; } @CalledByNative public long getCaptureTimeMs() { return captureTimeMs; } @CalledByNative public int getUid() { return uid; } @CalledByNative public int getStreamType() { return streamType; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("codecType=").append(codecType); sb.append(" width=").append(width); sb.append(" height=").append(height); sb.append(" framesPerSecond=").append(framesPerSecond); sb.append(" frameType=").append(frameType); sb.append(" rotation=").append(rotation); sb.append(" trackId=").append(trackId); sb.append(" captureTimeMs=").append(captureTimeMs); sb.append(" uid=").append(uid); sb.append(" streamType=").append(streamType); return sb.toString(); } }
Attributes
- codecType
- The codec type of the video:
- VIDEO_CODEC_VP8(1): VP8.
- VIDEO_CODEC_H264(2): H.264.
- VIDEO_CODEC_H265(3): (Default) H.265.
Note: In certain scenarios, such as low resolution of the captured video stream or limited device performance, the SDK automatically adjusts to the H.264 encoding format. - width
- Width (pixel) of the video frame.
- height
- Height (pixel) of the video frame.
- framesPerSecond
-
The number of video frames per second.
When this parameter is not
0
, you can use it to calculate the Unix timestamp of externally encoded video frames. - frameType
- The video frame type.
- 0: (Default) VIDEO_FRAME_TYPE_BLANK_FRAME, a blank frame.
- 3: VIDEO_FRAME_TYPE_KEY_FRAME, a key frame.
- 4:VIDEO_FRAME_TYPE_DELTA_FRAME, a Delta frame.
- 5:VIDEO_FRAME_TYPE_B_FRAME, a B frame.
- 6: VIDEO_FRAME_TYPE_UNKNOW, an unknown frame.
- rotation
- Rotation information of the video frame, as the following:
- 0: (Default) 0 degree.
- 90: 90 degrees.
- 180: 180 degrees.
- 270: 270 degrees.
- trackId
- Reserved for future use.
- captureTimeMs
- The Unix timestamp (ms) for capturing the external encoded video frames.
- uid
- The user ID to push the externally encoded video frame.
- streamType
- The type of video streams.