---
title: hi_mpi_vpss_get_chn_frame
description: "用户从通道获取一帧处理完成的图像。"
url: https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/latest/Application%20Development%20Guide/aadgc/aclcppdevg_03_0898.html
sourcePath: /source/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Application Development Guide/aadgc/aclcppdevg_03_0898.html
indexId: 05917a613a3ecea3271bb34119b42f12f7f3ad876a07041fa533b54de79eb5e6105
---
# hi_mpi_vpss_get_chn_frame

#### 函数功能

用户从通道获取一帧处理完成的图像。


#### 约束说明

- VPSS组必须已创建，请参见  hi_mpi_vpss_create_grp
接口。

- 只有在通过  hi_mpi_vpss_get_chn_attr
接口设置为USER模式下，并且队列深度不为0，才能获取到图像。
- 调用该接口获取图像，不会对后端绑定的模块有影响。如后端绑定VO显示，可以在显示过程中获取图像，VO仍正常显示，不会受到影响。
- 解码回放场景，由于不允许出现丢帧，VPSS只要有一个通道不处理新图像（通道已开启），则整个VPSS不处理新图像。例如说开启了通道0和通道1，两者都不绑定后端，通道图像队列长度都设为2，此时从通道0中最多获取出2帧已缓存的图像，因为通道1缓存2帧后未处理新图像，所以VPSS不会再处理新图像。


#### 函数原型

hi_s32 hi_mpi_vpss_get_chn_frame(hi_vpss_grp grp, hi_vpss_chn chn, hi_video_frame_info *frame_info, hi_s32 milli_sec);


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| grp | 输入 | VPSS组ID。 取值范围：[0, 264)。如果通过hi\_mpi\_vpss\_create\_grp接口的hi\_vpss\_grp\_attr.nr\_en参数开启3DNR功能，则VPSS组ID的取值范围为：[256, 264)。 |
| chn | 输入 | VPSS通道号。 取值范围：[0, 2) |
| frame\_info | 输出 | 图像信息。 |
| milli\_sec | 输入 | 超时时间。 取值范围： \-1：表示阻塞模式，程序一直等待，直到获取到图像才返回； 0：表示非阻塞模式； >0： 配置具体的超时时间，单位为毫秒（ms）。在此指定时间内如果没有获取到图像，则超时返回。 |


#### 返回值说明

- 0：成功
- 非0：失败，参见  6.10.7-VPSS视频处理子系统返回码


#### 参考资源

接口调用流程，参见视频数据获取和处理功能（Camera场景）、视频解码、处理和显示功能（NVR场景）。
