1. IVManager类
提供接入授权处理,模型管理、下载、缓存和更新
1.1 初始化
public int initWithDevKey(Context context, String devKey, IVLoadImageCallback callback)
参数说明
context:应用程序的上下文环境
devKey:开发密钥
callback:加载模型的回调函数
1.2 模型加载
public IVStatus loadIVModel(String modelName)
参数说明
modelName:模型名称
2. IVLoadImageCallback接口
它提供模型加载的回调函数
请在里面实现模型加载,通过IVManager 类调用loadIVModel方法
3. IVPlayerInstance类
提供超分接口,同时提供给用户显示或者不显示图像的权限(您可以获取图像数据自己显示,不过速度没有我们帮您显示快)
控制是否由我们帮您显示到GLSurfaceView上
void doRenderOnScreen(bool doRender);//true显示,false不显示,默认为true
如果您需要在超分完成,或者显示完成之后获得提醒,(这是可选择的)请设置一个条件变量,当然您也可以让它为NULL。
void setDoNotifyCondVarPtr(std::condition_variable *doNotifyCondVarP);
下次使用,在您的代码中自己使用:
超分图像,目前我们针对yuv420p的图像提供的接口如下
其中的y,u,v分别对应YUV420图像的三个通道数据,doingSuperResolution主要是服务于用户如果想在超分或者不超分切换时使用。
IvStatus中的statusCode值的定义与说明
状态命名 | 状态值 | 描述 |
IVStatus_Success | 0 | 成功 |
IVStatus_UnknowError | -1 | 未定义错误 |
IVStatus_InternelError | -2 | SDK内部执行错误(通常为内存问题) |
IVStatus_InvalidData | -10001 | HTTP请求,无效数据 |
IVStatus_InvalidParmeter | -10002 | HTTP请求,无效参数 |
IVStatus_InvalidSignature | -10003 | HTTP请求,无效签名 |
IVStatus_InvalidAppIDorDevKey | -10004 | HTTP请求,无效AppID或DevKey |
IVStatus_DatabaseConnectError | -10005 | 数据库连接错误 |
IVStatus_DatabaseOpenError | -10006 | 数据库打开错误 |
IVStatus_AppNotAuthorized | -20000 | App还没有获取获取授权,请检查您的AppID以及DevKey |
IVStatus_LoadModelError | -20001 | 加载模型错误 |
IVStatus_ModelNotFound | -20002 | 模型文件未找到 |
IVStatus_InvalidModelDefine | -20003 | 无效模型定义 |
IVStatus_InvalidReturnData | -20004 | 无效返回数据 |
IVStatus_CertificationNotFound | -20005 | 证书文件未找到 |
IVStatus_AndriodNotSupport | -30001 | Android系统版本不支持 |
IVStatus_GPUNotSupport | -30002 | 设备GPU不支持 |
IVStatus_ServerConnectError | -30003 | 服务器连接错误 |
IVStatus_PleaseLoadModelFirst | -40001 | 请先加载模型 |
IVStatus_InternelNetWorkingError | -40002 | 内部网络执行错误 |
对于返回结果的statusCode您也可以使用IVStatus的public方法getCodeString()获取中文的错误原因。
关于混淆:
如果出现:
以及:
由于加入了okhttp 所以混淆的时候可能会出错,请在“proguard-rules.pro”文件中加入:
-dontwarn okio.** -dontwarn javax.annotation.**
即可修改这两个错误。