aclvdecChannelDescParamType

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
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 training product does not support this option.

ACL_VDEC_OUT_MODE_UINT32

Sets whether to output frames in real time. (That is, one frame is sent and decoded without depending on the input of subsequent frames.)

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 decode 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.

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 decoding channels. Compared with the scenario where each VDEC decoding channel is processed by a separate thread, VDEC is less performant when multiple VDEC decoding 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

Indicates the channel ID.

For the Atlas A3 training product/Atlas A3 inference product, the value range is [0, 255].

For the Atlas A2 training product/Atlas A2 inference product, the value range is [0, 255].

For the Atlas 200I/500 A2 inference product, the value range is [0, 255].

For the Atlas inference product, the value range is [0, 255].

For the Atlas training product, the value range is [0, 31].

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 about the type definition, see acldvppStreamFormat.

For details, see acldvppStreamFormat.

ACL_VDEC_OUT_PIC_FORMAT_UINT32

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

For the Atlas A3 training product/Atlas A3 inference product, if the maximum output width is not set, 4096 is used by default.

For the Atlas A2 training product/Atlas A2 inference product, if the maximum output width is not set, 4096 is used by default.

For the Atlas 200I/500 A2 inference product, if the maximum output width is not set, 4096 is used by default.

For the Atlas inference product, if the maximum output width is not set, 4096 is used by default.

For the Atlas training product, if the maximum output width is not set, 1920 is used by default.

ACL_VDEC_OUT_PIC_HEIGHT_UINT32

Maximum output height

For the Atlas A3 training product/Atlas A3 inference product, if the maximum output height is not set, 4096 is used by default.

For the Atlas A2 training product/Atlas A2 inference product, if the maximum output height is not set, 4096 is used by default.

For the Atlas 200I/500 A2 inference product, if the maximum output height is not set, 4096 is used by default.

For the Atlas inference product, if the maximum output height is not set, 4096 is used by default.

For the Atlas training product, if the maximum output height is not set, 1120 is used by default.

ACL_VDEC_REF_FRAME_NUM_UINT32

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

For the Atlas A3 training product/Atlas A3 inference product, if the number of reference frames is not set, 8 is used by default.

For the Atlas A2 training product/Atlas A2 inference product, if the number of reference frames is not set, 8 is used by default.

For the Atlas 200I/500 A2 inference product, if the number of reference frames is not set, 8 is used by default.

For the Atlas inference product, if the number of reference frames is not set, 8 is used by default.

For the Atlas training product, this parameter is not configurable in the current version.

ACL_VDEC_BIT_DEPTH_UINT32

Sets the video bit width. The default value is 10 bits.

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

For the Atlas training product, this parameter is not configurable in the current version.