Using Frame Skipping of VDEC to Reduce Buffer Allocation

Background

In the event of VDEC+model inference cascade, if the video has a large number of frames but not every frame requires inference, you are advised to use the aclvdecSendSkippedFrame API to decode the frames that do not require inference, which will not output decoding results.

Principles

Video decoding requires continuous data and needs to output YUV data. Therefore, after each frame of data is decoded, VDEC needs to decompress and resize data and convert its format by using VPC.

If you do not want to obtain the decoding result of a frame, call aclvdecSendSkippedFrame so that you do not need to allocate output buffer or perform decompression, resizing, and format conversion by using VPC. This reduces buffer allocation and VPC workload to improve performance.

Instructions

For details, see hi_mpi_ai_get_frame.