aclvdecChannelDescParamType

enum aclvdecChannelDescParamType {
    ACL_VDEC_CSC_MATRIX_UINT32 = 0,      // CSC matrix attribute. Its value is of the uint32_t type.
    ACL_VDEC_OUT_MODE_UINT32,            // Real-time frame output or not. Its value is of the uint32_t type.
    ACL_VDEC_THREAD_ID_UINT64,           // Callback thread ID. Its value is of the uint64_t type.
    ACL_VDEC_CALLBACK_PTR,               // Callback function. Its value is a memory pointer.
    ACL_VDEC_CHANNEL_ID_UINT32,          // Channel ID. Its value is of the uint32_t type.
    ACL_VDEC_ENCODE_TYPE_UINT32,         // Video coding protocol. Its value is of the uint32_t type.
    ACL_VDEC_OUT_PIC_FORMAT_UINT32,      // Output image format. Its value is of the uint32_t type.
    ACL_VDEC_OUT_PIC_WIDTH_UINT32,       // Maximum width of the decoding stream. Its value is of the uint32_t type.
    ACL_VDEC_OUT_PIC_HEIGHT_UINT32,      // Maximum height of the decoding stream. Its value is of the uint32_t type.
    ACL_VDEC_REF_FRAME_NUM_UINT32,       // Number of reference frames. Its value is of the uint32_t type.
    ACL_VDEC_BIT_DEPTH_UINT32            // Video bit width. Its value is of the uint32_t type.
}
Table 1 Attribute settings

Attribute

Description

ACL_VDEC_CSC_MATRIX_UINT32

CSC matrix attribute. For details about the attribute values, see acldvppCscMatrix.

The Atlas 200/300/500 Inference Product does not support this option.

The Atlas Training Series Product does not support this option.

ACL_VDEC_OUT_MODE_UINT32

Frame output mode.

Value range:
  • 0: delayed frame output mode. VDEC starts to output the decoding result only after receiving multiple frames in the stream.
  • 1: real-time frame output mode. VDEC starts to output the decoding result in real time after receiving one frame in the stream. Only H.264/H.265 standard streams with simple reference relationships are supported (no long-term reference frames or B-frames).

ACL_VDEC_THREAD_ID_UINT64

Callback thread ID.

NOTE:

Do not pass the same thread ID for subscribing to VDEC callback functions on different devices in the same process.

On a single device, the same thread ID can be specified for multiple VDEC channels. Compared with the scenario where each VDEC channel is processed by a separate thread, VDEC is less performant when multiple VDEC channels are processed in serial in a single thread.

ACL_VDEC_CALLBACK_PTR

Decoding callback function.

For details, see aclvdecCallback.

ACL_VDEC_CHANNEL_ID_UINT32

Channel ID.

Must be in the range of [0, 31] for the Atlas 200/300/500 Inference Product.

Must be in the range of [0, 31] for the Atlas Training Series Product.

ACL_VDEC_ENCODE_TYPE_UINT32

Video coding protocol: H.265 main level (0), H.264 baseline level (1), H.264 main level (2), or H.264 high level (3).

For details, see acldvppStreamFormat.

ACL_VDEC_OUT_PIC_FORMAT_UINT32

Storage format of the output image. For details about the supported formats, see Restrictions on Stream/Image Formats, Width and Height Alignment, and Buffers.

Defaults to YUV420SP NV12.

ACL_VDEC_OUT_PIC_WIDTH_UINT32

Maximum output width.

Defaults to 1920 for the Atlas 200/300/500 Inference Product.

Defaults to 1920 for the Ascend 310 AI Processor.

ACL_VDEC_OUT_PIC_HEIGHT_UINT32

Maximum output height

Defaults to 1120 for the Atlas 200/300/500 Inference Product.

Defaults to 1120 for the Ascend 310 AI Processor.

ACL_VDEC_REF_FRAME_NUM_UINT32

Number of reference frames. Must be in the range of [0, 16].

Not configurable for the Atlas 200/300/500 Inference Product in the current version.

Not configurable for the Atlas Training Series Product in the current version.

ACL_VDEC_BIT_DEPTH_UINT32

Video bit depth.

Value range:
  • 0: 8-bit
  • 1: 10-bit (default)

Not configurable for the Atlas 200/300/500 Inference Product in the current version.

Not configurable for the Atlas Training Series Product in the current version.