hi_mpi_pngd_get_image_data

Applicability

Product

Supported

Atlas 350 Accelerator Card

Atlas A3 training product / Atlas A3 inference product

Atlas A2 training product / Atlas A2 inference product

Atlas 200I/500 A2 inference product

Atlas inference product

Atlas training product

Function Description

Fetches the decoded image and input stream of a decoding channel.

Prototype

hi_s32 hi_mpi_pngd_get_image_data(hi_pngd_chn chn, hi_pic_info *png_pic_info, hi_img_stream *stream, hi_s32 milli_sec)

Parameters

Parameter

Input/Output

Description

chn

Input

Decoding channel ID.

The value range of this parameter is [0, 128). The maximum number of channels is 128.

png_pic_info

Output

Pointer to the information about the decoded image. The decoded output is stored in the device buffer.

stream

Output

Pointer to the information of the decoded input stream.

milli_sec

Input

Timeout interval (ms).
  • -1: blocking mode.
  • 0: non-blocking mode.
  • > 0: timeout interval (timeout mode). The timeout interval varies with the operating system. The deviation is generally within a time slice of an operating system. For example, if the time slice of an operating system is 4 ms and the value of milli_sec is set to 1, the actual timeout interval ranges from 1 ms to 5 ms. When the CPU load is high, the timeout interval may fluctuate.

Returns

  • 0: success.
  • Other values: failure. For details, see PNGD Return Codes. HI_ERR_PNGD_BUF_EMPTY indicates that there is no data. Other error codes indicate abnormal decoding.

Restrictions

  • The mode of fetching decoded images is set to blocking mode, non-blocking mode, or timeout mode by setting milli_sec when this API is called.
  • Ensure that a channel has been created. Otherwise, the error code HI_ERR_PNGD_UNEXIST is returned. If the channel is destroyed during image fetching, the error code HI_ERR_PNGD_UNEXIST is returned.
  • In non-blocking mode, if the buffer has no decoded images, the error code HI_ERR_PNGD_BUF_EMPTY is returned.
  • In timeout mode, if no decoded images are fetched within the specified timeout interval, the error code HI_ERR_PNGD_BUF_EMPTY is returned.
  • This API fetches the PNGD result, including the input buffer and output buffer.
  • For details about the requirements on the input and output images during PNGD image decoding, see PNGD Functions and Restrictions.

See Also

For details about the API call sequence and examples, see PNGD.