视频转Base64使用中遇到的坑:IVS.0008 live detect error: Parse video data failed.. Please check your input.

背景

最近,在接入华为云的人证核身ivs之标准版(三要素),在使用中遇到了一个及其让人头痛的问题!就是视频base64,编码后,传参,华为返回如下错误:

400
3d4ea865726a9e94870baf74844bdd60
IVS.0008
live detect error: Parse video data failed.. Please check your input.

这里可以很明显的看到提示信息为:无法解析我们编码后的视频,让我们检查输入信息。也就是说我们将视频base64后,华为端无法解析为真正的视频文件!

分析

正常的base64码有多种转换方式,不同转换方式正常都是可以通过一些在线或者本地工具反编译出源文件的,这种情况下证明转换都是没问题的,另外在不同的工具应用场景中可能会存在生成的base64有特殊符号。常见的原因是有换行符的这种,这个可以注意下,如您说的直接到postman的中可以 这个也跟工具有关,部分工具会检测特殊符号在传参数时忽略,以上是常见转码遇到的情况。

解决问题

视频转Base64使用中遇到的坑:IVS.0008 live detect error: Parse video data failed.. Please check your input._第1张图片

右侧有完整的api参数讲解,当我们在左侧的参数配置区域,添加了合适的参数后,右侧会为我们生成响应开发语言的代码!有java、python、c、js等等基本上我们常用的语言这里都能找到相对应的华为SDK的开发语言demo,协助我们完成我们的程序代码调用!

由此可见,在使用中,也不能够完全确定是否是换行符或者其他字符被处理了,就按照这个问题在华为API Explorer处理一下。

结果验证华为的API Explorer是会处理base64编码。结果导致了video的base64传送给华为,然而他们却无法处理这个错误的编码,导致了上面提到的IVS.0008  live detect error: Parse video data failed.. Please check your input.错误信息。

好了,不使用他的输入框,改为文本json格式,就完全没有这错误了,也就是说,问题出在了华为的API Explorer在线工具的问题上!!!

这个问题影响了这么久。其实是出在了华为API Explorer的问题,将此问题反馈给华为,为其他小伙伴少走弯路!也算是一件快事!

好了今天关于IVS.0008 live detect error: Parse video data failed.. Please check your input.的问题就先讲到这!

欢迎大家点击下方卡片,关注《coder练习生》

你可能感兴趣的:(华为人证核身)