11bd4fe43Sopenharmony_ci### 3.1.3 VPSS理论及实现方式
21bd4fe43Sopenharmony_ci
31bd4fe43Sopenharmony_ci#### 3.1.3.1 VPSS理论
41bd4fe43Sopenharmony_ci
51bd4fe43Sopenharmony_ciVPSS(Video Process Sub-System)支持对一幅输入图像进行统一预处理,如去噪、去隔行等,然后再对各通道分别进行缩放、锐化等处理,最后**输出多种不同分辨率**的图像。
61bd4fe43Sopenharmony_ci VPSS是视频处理子系统,支持的具体图像处理功能包括FRC(Frame Rate Control)、CROP、Sharpen、3DNR、Scale、像素格式转换、LDC、Spread、固定角度旋转、任意角度旋转、鱼眼校正、Cover/Coverex、Overlayex、Mosaic、Mirror/Flip、HDR、AspectRatio、压缩解压等。
71bd4fe43Sopenharmony_ci
81bd4fe43Sopenharmony_ci关于VPSS的功能描述及相关名词概念描述请自行阅读**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件 V4.0 开发参考.pdf》第5章视频处理子系统中的5.2章节。
91bd4fe43Sopenharmony_ci
101bd4fe43Sopenharmony_ciVPSS在系统中的位置如下图所示:
111bd4fe43Sopenharmony_ci
121bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/102VPSS%E5%9C%A8%E7%B3%BB%E7%BB%9F%E4%B8%AD%E7%9A%84%E4%BD%8D%E7%BD%AE.png)
131bd4fe43Sopenharmony_ci
141bd4fe43Sopenharmony_ci通过调用SYS模块的绑定接口,可与AVS/USER/VDEC/VIVO/VENC/SVP等模块进行绑定,其中前者为VPSS的输入源,后者为VPSS的接收者。用户可通过MPI接口对GROUP进行管理。每个GROUP仅可与一个输入源绑定。GROUP的物理通道有两种工作模式:AUTO和USER,两种模式间可动态切换。AUTO模式下各通道仅可与一个接收者绑定,主要用于预览和回放场景下做播放控制。USER模式下各通道可与多个接收者绑定。**需要特别注意的是,USER模式主要用于对同一通道图像进行多路编码的场景,此模式下播放控制不生效,因此回放场景下不建议使用USER模式**。VPSS只有工作在离线模式下才支持AUTO模式。
151bd4fe43Sopenharmony_ci
161bd4fe43Sopenharmony_ciHi3516DV300 VPSS芯片数据处理流程如下图所示:
171bd4fe43Sopenharmony_ci
181bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/103Hi3516DV300%20VPSS%E8%8A%AF%E7%89%87%E6%95%B0%E6%8D%AE%E5%A4%84%E7%90%86%E6%B5%81%E7%A8%8B.png)
191bd4fe43Sopenharmony_ci
201bd4fe43Sopenharmony_ci**注意:**
211bd4fe43Sopenharmony_ci
221bd4fe43Sopenharmony_ci* VPSS在调用VGS做通道后处理时顺序为CoverEx、LumaStat、OverlayEx。
231bd4fe43Sopenharmony_ci
241bd4fe43Sopenharmony_ci* 固定角度旋转和任意角度旋转功能互斥,这两个功能在图中的先后顺序无需关注。
251bd4fe43Sopenharmony_ci
261bd4fe43Sopenharmony_ci* 扩展通道GDC任务和VGS任务互斥。
271bd4fe43Sopenharmony_ci
281bd4fe43Sopenharmony_ci#### 3.1.3.2 VPSS实现方式
291bd4fe43Sopenharmony_ci
301bd4fe43Sopenharmony_cidevice/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/helloworld/中,VPSS部分实现细节如下:
311bd4fe43Sopenharmony_ci
321bd4fe43Sopenharmony_ci##### 3.1.3.2.1 config vpss
331bd4fe43Sopenharmony_ci
341bd4fe43Sopenharmony_ci首先需要配置vpss所需的结构体,核心对VPSS_GRP_ATTR_S结构体和VPSS_CHN_ATTR_S结构体进行配置,下面对这个两个结构体进行详细说明。
351bd4fe43Sopenharmony_ci
361bd4fe43Sopenharmony_ci这两个结构体可在device/soc/hisilicon/hi3516dv300/sdk_linux/include/hi_comm_vpss.h中找到
371bd4fe43Sopenharmony_ci
381bd4fe43Sopenharmony_ci**VPSS_GRP_ATTR_S**
391bd4fe43Sopenharmony_ci
401bd4fe43Sopenharmony_ci【说明】
411bd4fe43Sopenharmony_ci
421bd4fe43Sopenharmony_ci* 定义VPSS GROUP属性
431bd4fe43Sopenharmony_ci
441bd4fe43Sopenharmony_ci【定义】
451bd4fe43Sopenharmony_ci
461bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/104VPSS_GRP_ATTR_S%E5%AE%9A%E4%B9%89.png)
471bd4fe43Sopenharmony_ci
481bd4fe43Sopenharmony_ci【成员】
491bd4fe43Sopenharmony_ci
501bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/105VPSS_GRP_ATTR_S%E6%88%90%E5%91%98.png)
511bd4fe43Sopenharmony_ci
521bd4fe43Sopenharmony_ci注:表5-5来源于**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件 V4.0 开发参考.pdf》
531bd4fe43Sopenharmony_ci
541bd4fe43Sopenharmony_ci【注意事项】
551bd4fe43Sopenharmony_ci
561bd4fe43Sopenharmony_ci请查阅**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件 V4.0 开发参考.pdf》VPSS_GRP_ATTR_S结构体注意事项内容。
571bd4fe43Sopenharmony_ci
581bd4fe43Sopenharmony_ci**VPSS_CHN_ATTR_S**
591bd4fe43Sopenharmony_ci
601bd4fe43Sopenharmony_ci【说明】
611bd4fe43Sopenharmony_ci
621bd4fe43Sopenharmony_ci* 定义VPSS物理通道的属性
631bd4fe43Sopenharmony_ci
641bd4fe43Sopenharmony_ci【定义】
651bd4fe43Sopenharmony_ci
661bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/106VPSS_CHN_ATTR_S%E5%AE%9A%E4%B9%89.png)
671bd4fe43Sopenharmony_ci
681bd4fe43Sopenharmony_ci【成员】
691bd4fe43Sopenharmony_ci
701bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/107VPSS_CHN_ATTR_S%E6%88%90%E5%91%98.png)
711bd4fe43Sopenharmony_ci
721bd4fe43Sopenharmony_ci注:表5-6来源于**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件 V4.0 开发参考.pdf》
731bd4fe43Sopenharmony_ci
741bd4fe43Sopenharmony_ci【注意事项】
751bd4fe43Sopenharmony_ci
761bd4fe43Sopenharmony_ci请查阅**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件 V4.0 开发参考.pdf》VPSS_CHN_ATTR_S结构体注意事项内容。
771bd4fe43Sopenharmony_ci
781bd4fe43Sopenharmony_ciconfig vpss 代码实现可参考**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/helloworld/smp/sample_lcd.c**中的int SampleVioVpssVoMipi(void)接口,具体细节如下:
791bd4fe43Sopenharmony_ci
801bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/108config%20vpss.png)
811bd4fe43Sopenharmony_ci
821bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/108initVPSScfg.png)
831bd4fe43Sopenharmony_ci
841bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/108addvpsschannel.png)
851bd4fe43Sopenharmony_ci
861bd4fe43Sopenharmony_ci##### 3.1.3.2.2 start vpss
871bd4fe43Sopenharmony_ci
881bd4fe43Sopenharmony_ci代码实现可参考**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/helloworld/smp/sample_lcd.c**文件
891bd4fe43Sopenharmony_ci
901bd4fe43Sopenharmony_ci核心围绕VpssStart接口,如下图所示:
911bd4fe43Sopenharmony_ci
921bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/109SAMPLE_COMM_VPSS_Start.png)
931bd4fe43Sopenharmony_ci
941bd4fe43Sopenharmony_ci针对VpssStart接口调用的底层接口作如下说明:
951bd4fe43Sopenharmony_ci
961bd4fe43Sopenharmony_ci**VPSS_GRP**
971bd4fe43Sopenharmony_ci
981bd4fe43Sopenharmony_ci【说明】
991bd4fe43Sopenharmony_ci
1001bd4fe43Sopenharmony_ci* 定义VPSS组号
1011bd4fe43Sopenharmony_ci
1021bd4fe43Sopenharmony_ci【定义】
1031bd4fe43Sopenharmony_ci
1041bd4fe43Sopenharmony_ci* typedef HI_S32 VPSS_GRP;
1051bd4fe43Sopenharmony_ci
1061bd4fe43Sopenharmony_ci【注意事项】
1071bd4fe43Sopenharmony_ci
1081bd4fe43Sopenharmony_ci* 无
1091bd4fe43Sopenharmony_ci
1101bd4fe43Sopenharmony_ci**HI_MPI_VPSS_CreateGrp**
1111bd4fe43Sopenharmony_ci
1121bd4fe43Sopenharmony_ci【描述】
1131bd4fe43Sopenharmony_ci
1141bd4fe43Sopenharmony_ci* 创建一个VPSS GROUP
1151bd4fe43Sopenharmony_ci
1161bd4fe43Sopenharmony_ci【语法】
1171bd4fe43Sopenharmony_ci
1181bd4fe43Sopenharmony_ci* HI_S32 HI_MPI_VPSS_CreateGrp(VPSS_GRP VpssGrp, const VPSS_GRP_ATTR_S *pstGrpAttr);
1191bd4fe43Sopenharmony_ci
1201bd4fe43Sopenharmony_ci【参数】
1211bd4fe43Sopenharmony_ci
1221bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/110HI_MPI_VPSS_CreateGrp%E5%8F%82%E6%95%B0.png)
1231bd4fe43Sopenharmony_ci
1241bd4fe43Sopenharmony_ci【返回值】
1251bd4fe43Sopenharmony_ci
1261bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/110HI_MPI_VPSS_CreateGrp%E8%BF%94%E5%9B%9E%E5%80%BC.png)
1271bd4fe43Sopenharmony_ci
1281bd4fe43Sopenharmony_ci【需求】
1291bd4fe43Sopenharmony_ci
1301bd4fe43Sopenharmony_ci* 头文件:hi_comm_vpss.hmpi_vpss.h
1311bd4fe43Sopenharmony_ci
1321bd4fe43Sopenharmony_ci* 库文件:libmpi.a
1331bd4fe43Sopenharmony_ci
1341bd4fe43Sopenharmony_ci【注意】
1351bd4fe43Sopenharmony_ci
1361bd4fe43Sopenharmony_ci* 不支持重复创建。
1371bd4fe43Sopenharmony_ci
1381bd4fe43Sopenharmony_ci* 当VPSS工作在VI_PARALLEL_VPSS_PARALLEL模式时,只有GROUP0可以被创建
1391bd4fe43Sopenharmony_ci
1401bd4fe43Sopenharmony_ci* 当Hi3516DV300的GROUP0工作VI_ONLINE_VPSS_ONLINE模式时,只有GROUP0可以被创建。
1411bd4fe43Sopenharmony_ci
1421bd4fe43Sopenharmony_ci**HI_MPI_VPSS_SetChnAttr**
1431bd4fe43Sopenharmony_ci
1441bd4fe43Sopenharmony_ci【描述】
1451bd4fe43Sopenharmony_ci
1461bd4fe43Sopenharmony_ci* 设置VPSS通道属性。
1471bd4fe43Sopenharmony_ci
1481bd4fe43Sopenharmony_ci【语法】
1491bd4fe43Sopenharmony_ci
1501bd4fe43Sopenharmony_ci* HI_S32 HI_MPI_VPSS_SetChnAttr(VPSS_GRP VpssGrp, VPSS_CHN VpssChn, const VPSS_CHN_ATTR_S *pstChnAttr);
1511bd4fe43Sopenharmony_ci
1521bd4fe43Sopenharmony_ci【参数】
1531bd4fe43Sopenharmony_ci
1541bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/111HI_MPI_VPSS_SetChnAttr%E5%8F%82%E6%95%B0.png)
1551bd4fe43Sopenharmony_ci
1561bd4fe43Sopenharmony_ci【返回值】
1571bd4fe43Sopenharmony_ci
1581bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/112HI_MPI_VPSS_SetChnAttr%E8%BF%94%E5%9B%9E%E5%80%BC.png)
1591bd4fe43Sopenharmony_ci
1601bd4fe43Sopenharmony_ci【需求】
1611bd4fe43Sopenharmony_ci
1621bd4fe43Sopenharmony_ci* 头文件:hi_comm_vpss.hmpi_vpss.h
1631bd4fe43Sopenharmony_ci
1641bd4fe43Sopenharmony_ci* 库文件:libmpi.a
1651bd4fe43Sopenharmony_ci
1661bd4fe43Sopenharmony_ci【注意】
1671bd4fe43Sopenharmony_ci
1681bd4fe43Sopenharmony_ci* GROUP必须已创建。
1691bd4fe43Sopenharmony_ci
1701bd4fe43Sopenharmony_ci* 扩展通道不支持此接口。 
1711bd4fe43Sopenharmony_ci
1721bd4fe43Sopenharmony_ci* 通道做任意角度旋转、LDC、Spread处理或者其绑定的扩展通道开启了鱼眼校正时不支持通道尺寸动态改变,需要先关闭如上功能,才能动态改变通道尺寸。
1731bd4fe43Sopenharmony_ci
1741bd4fe43Sopenharmony_ci
1751bd4fe43Sopenharmony_ci
1761bd4fe43Sopenharmony_ci**HI_MPI_VPSS_EnableChn**
1771bd4fe43Sopenharmony_ci
1781bd4fe43Sopenharmony_ci【描述】
1791bd4fe43Sopenharmony_ci
1801bd4fe43Sopenharmony_ci* 启用VPSS通道
1811bd4fe43Sopenharmony_ci
1821bd4fe43Sopenharmony_ci【语法】
1831bd4fe43Sopenharmony_ci
1841bd4fe43Sopenharmony_ci* HI_S32 HI_MPI_VPSS_EnableChn(VPSS_GRP VpssGrp, VPSS_CHN VpssChn);
1851bd4fe43Sopenharmony_ci
1861bd4fe43Sopenharmony_ci【参数】
1871bd4fe43Sopenharmony_ci
1881bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/113HI_MPI_VPSS_EnableChn%E5%8F%82%E6%95%B0.png)
1891bd4fe43Sopenharmony_ci
1901bd4fe43Sopenharmony_ci【返回值】
1911bd4fe43Sopenharmony_ci
1921bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/114HI_MPI_VPSS_EnableChn%E8%BF%94%E5%9B%9E%E5%80%BC.png)
1931bd4fe43Sopenharmony_ci
1941bd4fe43Sopenharmony_ci【需求】
1951bd4fe43Sopenharmony_ci
1961bd4fe43Sopenharmony_ci* 头文件:hi_comm_vpss.hmpi_vpss.h
1971bd4fe43Sopenharmony_ci
1981bd4fe43Sopenharmony_ci* 库文件:libmpi.a
1991bd4fe43Sopenharmony_ci
2001bd4fe43Sopenharmony_ci【注意】
2011bd4fe43Sopenharmony_ci
2021bd4fe43Sopenharmony_ci* 多次使能返回成功。 
2031bd4fe43Sopenharmony_ci* GROUP 必须已创建。
2041bd4fe43Sopenharmony_ci* 若支持扩展通道,扩展通道必须保证此通道绑定的源物理通道已经使能,否则返回失败错误码。
2051bd4fe43Sopenharmony_ci
2061bd4fe43Sopenharmony_ci
2071bd4fe43Sopenharmony_ci
2081bd4fe43Sopenharmony_ci**HI_MPI_VPSS_StartGrp**
2091bd4fe43Sopenharmony_ci
2101bd4fe43Sopenharmony_ci【描述】
2111bd4fe43Sopenharmony_ci
2121bd4fe43Sopenharmony_ci* 启用VPSS GROUP。
2131bd4fe43Sopenharmony_ci
2141bd4fe43Sopenharmony_ci【语法】
2151bd4fe43Sopenharmony_ci
2161bd4fe43Sopenharmony_ci* HI_S32 HI_MPI_VPSS_StartGrp(VPSS_GRP VpssGrp);
2171bd4fe43Sopenharmony_ci
2181bd4fe43Sopenharmony_ci【参数】
2191bd4fe43Sopenharmony_ci
2201bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/115HI_MPI_VPSS_StartGrp%E5%8F%82%E6%95%B0.png)
2211bd4fe43Sopenharmony_ci
2221bd4fe43Sopenharmony_ci【返回值】
2231bd4fe43Sopenharmony_ci
2241bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/116HI_MPI_VPSS_StartGrp%E8%BF%94%E5%9B%9E%E5%80%BC.png)
2251bd4fe43Sopenharmony_ci
2261bd4fe43Sopenharmony_ci【需求】
2271bd4fe43Sopenharmony_ci
2281bd4fe43Sopenharmony_ci* 头文件:hi_comm_vpss.hmpi_vpss.h
2291bd4fe43Sopenharmony_ci
2301bd4fe43Sopenharmony_ci* 库文件:libmpi.a
2311bd4fe43Sopenharmony_ci
2321bd4fe43Sopenharmony_ci【注意】
2331bd4fe43Sopenharmony_ci
2341bd4fe43Sopenharmony_ci* GROUP必须已创建。
2351bd4fe43Sopenharmony_ci
2361bd4fe43Sopenharmony_ci* 重复调用该函数设置同一个组返回成功。
2371bd4fe43Sopenharmony_ci
2381bd4fe43Sopenharmony_ci#### 3.1.3.3 VI bind VPSS
2391bd4fe43Sopenharmony_ci
2401bd4fe43Sopenharmony_ciMPP提供系统绑定接口(HI_MPI_SYS_Bind),即通过数据接收者绑定数据源来建立两者之间的关联关系(只允许数据接收者绑定数据源)。绑定后,数据源生成的数据将自动发送给接收者。目前MPP支持的绑定关系如下:
2411bd4fe43Sopenharmony_ci
2421bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/118MPP%E6%94%AF%E6%8C%81%E7%9A%84%E7%BB%91%E5%AE%9A%E5%85%B3%E7%B3%BB.png)
2431bd4fe43Sopenharmony_ci
2441bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/119MPP%E6%94%AF%E6%8C%81%E7%9A%84%E7%BB%91%E5%AE%9A%E5%85%B3%E7%B3%BB.png)
2451bd4fe43Sopenharmony_ci
2461bd4fe43Sopenharmony_ci**VI bind VPSS绑定VI和VPSS之间的关联关系,绑定后,数据源生成的数据将自动发送给接收者,调用的底层接口如下:**
2471bd4fe43Sopenharmony_ci
2481bd4fe43Sopenharmony_ci**HI_MPI_SYS_Bind**
2491bd4fe43Sopenharmony_ci
2501bd4fe43Sopenharmony_ci【描述】
2511bd4fe43Sopenharmony_ci
2521bd4fe43Sopenharmony_ci* 数据源到数据接收者绑定接口。
2531bd4fe43Sopenharmony_ci
2541bd4fe43Sopenharmony_ci【语法】
2551bd4fe43Sopenharmony_ci
2561bd4fe43Sopenharmony_ci* HI_S32 HI_MPI_SYS_Bind(const MPP_CHN_S *pstSrcChn, const MPP_CHN_S *pstDestChn);
2571bd4fe43Sopenharmony_ci
2581bd4fe43Sopenharmony_ci【参数】
2591bd4fe43Sopenharmony_ci
2601bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/120HI_MPI_SYS_Bind%E5%8F%82%E6%95%B0.png)
2611bd4fe43Sopenharmony_ci
2621bd4fe43Sopenharmony_ci【返回值】
2631bd4fe43Sopenharmony_ci
2641bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/121HI_MPI_SYS_Bind%E8%BF%94%E5%9B%9E%E5%80%BC.png)
2651bd4fe43Sopenharmony_ci
2661bd4fe43Sopenharmony_ci【需求】
2671bd4fe43Sopenharmony_ci
2681bd4fe43Sopenharmony_ci* 头文件:hi_comm_sys.hmpi_sys.h
2691bd4fe43Sopenharmony_ci
2701bd4fe43Sopenharmony_ci* 库文件:libmpi.a
2711bd4fe43Sopenharmony_ci
2721bd4fe43Sopenharmony_ci【注意】
2731bd4fe43Sopenharmony_ci
2741bd4fe43Sopenharmony_ci* 系统目前支持的绑定关系,请参见**源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/doc中**的《HiMPP媒体处理软件V4.0开发参考.pdf》中的表2-2。
2751bd4fe43Sopenharmony_ci* 同一个数据接收者只能绑定一个数据源。
2761bd4fe43Sopenharmony_ci* 绑定是指数据源和数据接收者建立关联关系。绑定后,数据源生成的数据将自动发送给接收者。
2771bd4fe43Sopenharmony_ci* VI和VDEC作为数据源,是以通道为发送者,向其他模块发送数据,用户将设备号置为0,SDK不检查输入的设备号。
2781bd4fe43Sopenharmony_ci* VO作为数据源发送回写(WBC)数据时,是以设备为发送者,向其他模块发送数据,用户将通道号置为0,SDK不检查输入的通道号。
2791bd4fe43Sopenharmony_ci* VPSS作为数据接收者时,是以设备(GROUP)为接收者,接收其他模块发来的数据,用户将通道号置为0。
2801bd4fe43Sopenharmony_ci* VENC作为数据接收者时,是以通道号为接收者,接收其他模块发过来的数据,用户将设备号置为0,SDK不检查输入的设备号。若VENC工作在VENC_PIC_RECEIVE_MULTI模式下,用户需要配置设备号,此时设备号实际用于指定输入源,可以使用VENC_PIC_RECEIVE_SOURCE0、VENC_PIC_RECEIVE_SOURCE1、VENC_PIC_RECEIVE_SOURCE2、VENC_PIC_RECEIVE_SOURCE3宏进行输入源指定。
2811bd4fe43Sopenharmony_ci* AVS作为数据接收者时,是以设备(GROUP)、通道(PIPE)为接收者。
2821bd4fe43Sopenharmony_ci* 其他情况均需指定设备号和通道号。
2831bd4fe43Sopenharmony_ci
2841bd4fe43Sopenharmony_ci**在源码的device/soc/hisilicon/hi3516dv300/sdk_linux/sample/taurus/helloworld/smp/sample_lcd.c文件中**
2851bd4fe43Sopenharmony_ci
2861bd4fe43Sopenharmony_civi bind vpss代码在ViVpssCreate()接口中的实现方式如下:
2871bd4fe43Sopenharmony_ci
2881bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/122vi%20bind%20vpss%E4%BB%A3%E7%A0%81.png)
2891bd4fe43Sopenharmony_ci
2901bd4fe43Sopenharmony_ci其中ViBindVpss具体实现细节如下:
2911bd4fe43Sopenharmony_ci
2921bd4fe43Sopenharmony_ci![](./figures/hispark_taurus_helloworld_sample/123SAMPLE_COMM_VI_Bind_VPSS.png)
2931bd4fe43Sopenharmony_ci
294