海思编码器 VencCheckTimeRef err

背景: 在项目中有16个vpss通道数据需要进行截图,截图编码通道就1个,所以需要遍历绑定vpss到venc,这16个vpss通道中有模拟相机的数据和数字相机的数据。其中模拟相机的vpss能正常的绑定到venc并进行正确的编码,但是数字相机的vpss绑定到venc就有大量的报错,错误信息如下:

<3>[ venc] [Func]:VencCheckVideoInfo [Line]:1462 [Info]:<3>[ venc] Venc 17 : VencCheckVideoInfo VencCheckTimeRef err. <3>[ venc] [Func]:VencCheckVpssSendInfo [Line]:1525 [Info]:<3>[ venc] Venc 17 : Sendinfo pic info err. <3>[ venc] [Func]:VencCheckTimeRef [Line]:3399 [Info]:<3>[ venc] Current timeref(0x14a2) is not larger than GrpTimeRef(0x1564) <3>[ venc] [Func]:VencCheckVideoInfo [Line]:1462 [Info]:<3>[ venc] Venc 17 : VencCheckVideoInfo VencCheckTimeRef err. <3>[ venc] [Func]:VencCheckVpssSendInfo [Line]:1525 [Info]:<3>[ venc] Venc 17 : Sendinfo pic info err. <3>[ venc] [Func]:VencCheckTimeRef [Line]:3399 [Info]:<3>[ venc] Current timeref(0x14a4) is not larger than GrpTimeRef(0x1564) <3>[ venc] [Func]:VencCheckVideoInfo [Line]:1462 [Info]:<3>[ venc] Venc 17 : VencCheckVideoInfo VencCheckTimeRef err. <3>[ venc] [Func]:VencCheckVpssSendInfo [Line]:1525 [Info]:<3>[ venc] Venc 17 : Sendinfo pic info err. <3>[ venc] [Func]:VencCheckTimeRef [Line]:3399 [Info]:<3>[ venc] Current timeref(0x14a6) is not larger than GrpTimeRef(0x1564)

分析: 通过报错信息的字面意思可以分析出,vpss通道的基准时钟参考大于venc的基准时钟,但是根据经验,只有手动get vpss 通道的数据,然后send到venc 时才需要手动的累积基准时钟,动态绑定时不需要的,查了各种原因也试了很多方法还是不行。

解决: 翻看手册查看api,发现只需要在HI_MPI_VENC_StartRecvPicEx 之前进行HI_MPI_VENC_ResetChn就可以顺利解决了,获得编码数据后正常HI_MPI_VENC_StopRecvPic即可。

免责声明:文章内容来自互联网,本站不对其真实性负责,也不承担任何法律责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:海思编码器 VencCheckTimeRef err https://www.yhzz.com.cn/a/13510.html

上一篇 2023-05-11 22:50:19
下一篇 2023-05-11 22:54:57

相关推荐

联系云恒

在线留言: 我要留言
客服热线:400-600-0310
工作时间:周一至周六,08:30-17:30,节假日休息。