太阳能监控摄像头android SDK开发包使用说明
太阳能监控摄像头android SDK开发包使用说明
Version : 4.0.6
更新说明更新⽇期版本号负责⼈
解决本地录像异常2018年09⽉03⽇4.0.6 Engel
解决中⽂件乱码及结尾不能⽤空格问题2018年08⽉31⽇4.0.5 Engel
优化H265在线回放、AVI本地回放2018年08⽉27⽇4.0.4 Engel
解决本地录像偶尔失败2018年08⽉24⽇4.0.3 Engel
修正本地回放AVI的bug,添加本地录像时异常处
理2018年08⽉23⽇4.0.2 Engel
下载⽂件时判断视频格式2018年08⽉21⽇4.0.1 Engel
⽀持H265视频格式2018年08⽉13⽇4.0.0 Engel
添加⾃定义声⾳报警功能2018年08⽉08⽇3.5.2 Engel
添加透传功能2018年08⽉01⽇3.5.1 Engel
申请⼤内存时处理异常
初始化失败在连接时再次初始化
内推消息解密
2018年07⽉25⽇3.5.0 Engel
兼容密码正确却返回密码错误的部分设备2018年08⽉22⽇3.4.0.3 Engel
修改切换分辨率可能崩溃问题2018年08⽉01⽇3.4.0.2 Engel
⽀持NNNN设备2018年07⽉25⽇3.4.0.1 Engel
修改密码为空崩溃问题2018年07⽉11⽇3.4.0 Engel
修改⾃动更新服务器字串功能2018年07⽉04⽇3.3.9 Engel
修改鱼眼没有半径引发的Bug 2018年06⽉20⽇3.3.8 Engel
修改鱼眼新镜头类型2018年06⽉20⽇3.3.7 Engel
1 添加获取sd 卡格式化状态
2 替换新鱼眼库(⽀持鱼眼新镜头)
3 smart 设置ssid、pwd 时超长返回
2018年06⽉12⽇3.3.6 Engel
修改登录时密码判断⽅法2018年06⽉02⽇3.3.5 Engel
替换SY3.0.X库2018年05⽉29⽇3.3.4 Engel
添加T、W、U三个字段2018年05⽉25⽇3.3.3 Engel
替换鱼眼库2018年05⽉10⽇3.3.2 Engel
添加新能⼒集2018年05⽉07⽇3.3.1 Engel
本地回放⽀持G726⾳频格式的视频⽂件2018年04⽉28⽇3.3.0 Engel
修改鱼眼300W的bug 2018年04⽉17⽇3.2.9 Engel
1 添加抓拍时图⽚缩放功能接⼜
2 初始化鱼眼库时添加对鱼眼设备类型判断
3 添加获取本地⽂件时长接⼜
2018年04⽉10⽇3.2.8 Engel
1 增加新能⼒集
2 AVI读取bug
3 替换鱼眼库
2018年03⽉21⽇3.2.7 Engel
1 搜索时增加发送次数
2 修改线程内存泄露
3 修改323镜头⼿势操作
4 添加强制修改推送服务器接⼜
2018年03⽉08⽇3.2.6 Engel
1 打开实时视频判断宽⾼
2 替换fish.a 库 (裁剪视频⿊边)
3 (pcmtoaac close 时判断是否为null)
4 修改回放mp4时 stss 内存分配⼤⼩
2018年02⽉28⽇3.2.5 Engel
1 加⼤下载、本地回放单帧缓冲⼤⼩
2 rec_mp4 单帧缓冲改⼤,并在读取时判断是否⼤
于单帧缓冲⼤⼩
3 修改rec_264单帧缓冲⼤⼩
4 disconnect 前调⽤XP2P_Connect_Break
2018年02⽉02⽇3.2.4 Engel
如果是鱼眼,流控最⼤帧数15 ,超过则不发送流
控2018年01⽉30⽇3.2.3 Engel
1 把MMMM 默认写进SDK
2 把柱碗左右调⼀样
3 gl结束时清纹理,回收gl,解决内存不断加⼤的
bug。
2018年01⽉29⽇3.2.2 Engel
1 修改头⽂件,wifi相关扩展
2 如果是鱼眼打开视频前Quality 都设置为1
2018年01⽉16⽇3.2.1 Engel
1 新镜头壁装
2 修改以前壁装模式
3 解决在线回放获取宽⾼错误时app 崩溃
2018年01⽉10⽇3.2.0 Engel
打开对鱼眼功能的限制2018年01⽉08⽇3.1.8 Engel
1 修改获取新添加字段服务器推送地址的问题。
(服务器添加UID字段)。
2 把IIII "JJJJ" "KKKK", "MMMM 加载到内存中
3 修改uidlist 路径,卸载程序时能删除这个⽂件
2018年01⽉05⽇3.1.7 Engel
添加对SECRUI UID 的⽀持。2017年12⽉25⽇3.1.6 Engel
修改鱼眼壁装显⽰参数 2017年12⽉19⽇3.1.5 Engel
1 把已经存在的UID 加载到内存中,连接时先从内
存中查找,如果找不到,就判断⽂件是否存在,
若存在判断⽂件内容是否正确,不正确删除⽂
件,若⽂件不存则创建⽂件。
2 初始化时不判断⽂件
2017年12⽉15⽇3.1.4 Engel
修改流控时帧数与I帧间隔不成⽐例的Bug 2017年12⽉10⽇3.1.3 Engel
添加AES+Base64 加密接⼜2017年12⽉8⽇3.1.2 Engel
1 添加解码mjpeg 的代码
2 鱼眼模式下:圆柱与碗同⽅向转动,⼆画⾯⽀持
分别转动。
2017年12⽉5⽇3.1.1 Engel
添加鱼眼横屏回放功能(⽀持不同分辨率) 2017年11⽉28⽇3.1.0 Engel
1、连接时查找UID 前缀先转⼤写
2、每次打开程序时,检测本地⽂件内容格式是否
正确,不正确则删除。
2017年11⽉22⽇3.0.3 Engel
1、⽀持⾃动更新服务器字串功能
2、判断是鱼眼,图像等级强制为1
3、向服务器获取时,添加发送内容。
2017年11⽉16⽇3.0.3 Engel
修改读取本地AVI⽂件总时长的bug 2017年11⽉08⽇3.0.2 Engel
1 添加获取鱼眼的能⼒集
2 兼容V6.1.4.1.1-20150214 返回数据长度不够结
构体长度的修改判断长度
3、修改鱼眼图像左右反的问题
4、碗形视图巡航画⾯改为逆时针转动 与圆、柱
保持⼀样
2017年11⽉02⽇3.0.1 Engel
1 修改打开监听、对讲等还没有收到设备回复时就
关闭引发的问题
2 修改参数解决滑动抖动,控制是否可以放⼤、
移动
3 替换libfisheye.so解决不同分辨率之间切换时显⽰
不正常。
2017年10⽉24⽇3.0.0 Engel
优化回放快进时1 2 两个等级2017年09⽉15⽇2.1.2 Engel
1、添加对RF⽀持,添加获取报警LOG
2、修改本地录像没有声⾳2017年09⽉05⽇2.1.1 Engel
1、添加下载h264 ⽂件功能
2、添加播放本地mp4\h264\avi⽂件功能
3、添加本地h264\avi转成mp4⽂件功能
4、播放aac拆分成每次320的长度进⾏播放
2017年09⽉01⽇⽇2.1.0 Engel
1、添加对IIII JJJJ KKKK 的⽀持
2、修改流控参数及优化算法2017年09⽉28⽇
2.3.0(特殊
版本)
Engel
在2.0.3 版本上优化对解析数据的判断2017年8⽉18⽇2.0.4 Engel
解析数据前判断数据长度2017年8⽉15⽇2.0.3 Engel
开始下载前清空本地、⽹络缓冲数据,停⽌下载
时退出p2p Read
2017年7⽉25⽇2.0.2 Engel
添加监听声⾳是否播放功能2017年7⽉20⽇2.0.2 Engel
停⽌下载时不等解析完成⽽直接退出2017年7⽉17⽇2.0.1 Engel
添加下载功能,修改逻辑。添加更完整的时区2017年7⽉10⽇2.0.0 Engel
添加对字段: XXXX YYYY ZZZZ 的⽀持2017 年6⽉12⽇1.0.16 Engel
添加流控库 hisdkqos.so
2017 年5⽉25⽇1.0.15 Engel
修改AAES 服务器。 打开 NetworkDetect ⽅法,不
管返回值
2017 年5⽉12⽇1.0.14 Engel
1 更新p2p 到2.2.6 2 屏蔽掉network函数 3 图像质
量等级2017 年5⽉3⽇1.0.13 Engel
1 退出观看,设备码流不能复原,在Qos 线程修改
2 添加透传 3 修改 获取句柄成功才去操作2017年4⽉14⽇1.0.12 Engel
添加yuv返回接⼜、关闭视频显⽰、修复连接uuid
不对应的bug
2017年3⽉14⽇1.0.11 Engel
⼀⼂集成步骤 ...................................................................................................................................7
1.添加库⽂件 ............................................................................................................................7
2.修改Androidmanifest.xml⽂件 ..............................................................................................7
SDK接⼜调⽤主要流程 ...........................................................................................................7
⼆⼂API接⼜ .....................................................................................................................................9
1.HiChipSDK类 ........................................................................................................................9
init ......................................................................................................................................9
uninit ..................................................................................................................................9
getSDKVersion ................................................................................................................10
Aes_Encrypt ....................................................................................................................10
Aes_Decrypt ....................................................................................................................10
HiChipSDK. HiChipInitCallback接⼜ ....................................................................................10
onSuccess .........................................................................................................................10
onFali ...............................................................................................................................10
HiCamera类 .............................................................................................................................10
HiCamera构造⽅法 .........................................................................................................10
connect .............................................................................................................................11
disconnect ........................................................................................................................11
sendIOCtrl ........................................................................................................................11
registerIOSessionListener ................................................................................................11
unregisterIOSessionListener ............................................................................................12
registerPlayStateListener .................................................................................................12
unregisterPlayStateListener .............................................................................................12
registerYUVDataListener ........................................................................................................12
unregisterYUVDataListener ....................................................................................................12
registerRPSAudioListener ...............................................................................................13
unregisterRPSAudionListener .........................................................................................13
startLiveShow ..................................................................................................................13
stopLiveShow ..................................................................................................................13
setLiveShowMonitor .......................................................................................................13
ResumeLiveShow ............................................................................................................14
PauseLiveShow ...............................................................................................................14
getSnapshot ......................................................................................................................14
getSnapshot_EXT ............................................................................................................14
startTalk ...........................................................................................................................14
stopTalk ...........................................................................................................................15
startListening ...................................................................................................................15
startListening ...................................................................................................................15
ResumePlayAudio ...........................................................................................................15
PausePlayAudio ...............................................................................................................15
startPlayback ....................................................................................................................16
stopPlayback ....................................................................................................................17
setLiveShowMonitor .......................................................................................................17
startDownloadRecording .................................................................................................18
startDownloadRecording2 ...............................................................................................18
stopDownloadRecording .................................................................................................18
startRecording ..................................................................................................................18
stopRecording ..................................................................................................................18
getConnectState ...............................................................................................................19
getUid ..............................................................................................................................19
setUid ...............................................................................................................................19
getUsername ....................................................................................................................19
setUsername. ....................................................................................................................19
getPassword .....................................................................................................................20
setPassword .....................................................................................................................20
getCommandFunction .....................................................................................................20
Getmold ...........................................................................................................................20
getChipVersion ................................................................................................................20
ShowPic ...........................................................................................................................21
getDeciveInfo ..................................................................................................................21
StartRecordingAudio .......................................................................................................21
StopRecordingAudio .......................................................................................................21
StartPlayRecordAudio .....................................................................................................21
StopPlayRecordAudio .....................................................................................................21
StartSendRecordAudio ....................................................................................................22
stopSendRecordAudio .....................................................................................................22
ICameraIOSessionCallback接⼜ .............................................................................................22
摄像机连接状态枚举 .....................................................................................................22
receiveSessionState .........................................................................................................22
receiveIOCtrlData ............................................................................................................22
ICameraYUVCallback 接⼜ ....................................................................................................23
callbackYUVData ....................................................................................................................23
ICameraPlayStateCallback接⼜ ..............................................................................................23
摄像播放状态枚举 .........................................................................................................23
callbackState ....................................................................................................................23
callbackPlayUTC .............................................................................................................23
ICameraDownloadCallback接⼜. ............................................................................................24
下载状态枚举 .................................................................................................................24
callbackDownloadState ...................................................................................................24
ICameraRPSAudioCallback接⼜ ............................................................................................24
状态枚举 .........................................................................................................................24
callbackRPSAudioState ...................................................................................................25
HiGLMonitor类 .......................................................................................................................25
setMatrix ..........................................................................................................................25
SetViewType ....................................................................................................................25
SetViewType_EXT ..........................................................................................................26
SetScreenSize ..................................................................................................................26
SetCruise ..........................................................................................................................26
SetCruise ..........................................................................................................................26
SetPosition .......................................................................................................................26
SetZoom ...........................................................................................................................27
SetGesture. .......................................................................................................................27
SetGesture. .......................................................................................................................27
SetShowScreenMode .......................................................................................................27
GetFishLager ...................................................................................................................27
HiPushSDK类 .........................................................................................................................27
HiPushSDK构造⽅法 .....................................................................................................28
HiPushSDK构造⽅法 .....................................................................................................28
bind ..................................................................................................................................28
unbind ..............................................................................................................................28
setPushServer ...................................................................................................................28
setPushServer ...................................................................................................................29
getPushServer ..................................................................................................................29
HiPushSDK.OnPushResult接⼜ ..............................................................................................29
绑定类型枚举 .................................................................................................................29
绑定结果枚举 .................................................................................................................29
HiSearchSDK类 ......................................................................................................................30
HiSearchSDK构造⽅法 ..................................................................................................30
search ...............................................................................................................................30
HiSearchSDK构造⽅法 ..................................................................................................30
search2 .............................................................................................................................30
HiSearchSDK.HiSearchResult类 ............................................................................................31
HiSearchSDK.OnSearchResult接⼜ .......................................................................................31
HiSearchSDK.ISearchResult接⼜ ...........................................................................................31
HiSmartWifiSet类 ...................................................................................................................31
HiStartSmartConnection ..................................................................................................31
HiStopSmartConnection ..................................................................................................32
Packet类 ...................................................................................................................................32
byteArrayToShort_Little. .................................................................................................32
byteArrayToInt_Little ......................................................................................................32
byteArrayToLong_Little ..................................................................................................32
longToByteArray_Little ..................................................................................................32
intToByteArray_Little .....................................................................................................32
shortToByteArray_Little. .................................................................................................33
byteToFloat ......................................................................................................................33
floatToByte ......................................................................................................................33
PlayLocal类 .............................................................................................................................33
registerPlayLocalStateListener ........................................................................................33
unregisterPlayLocalStateListener ....................................................................................33
setLiveShowMonitor .......................................................................................................33
StartPlayLocal .................................................................................................................33
StopPlayLocal ..................................................................................................................34
GetFileTime .....................................................................................................................34
PlayLocal_Seek ...............................................................................................................34
PlayLocal_Speed .............................................................................................................34
PlayLocal_pause ..............................................................................................................34
PlayLocal_Resume ..........................................................................................................34
Start2Mp4 ........................................................................................................................35
Stop2Mp4 ........................................................................................................................35
PlayLocalFileCallback类 .........................................................................................................35
callbackplaylocal .............................................................................................................35
回放状态枚举 .................................................................................................................35
转换状态枚举 .................................................................................................................35
三⼂⽂档说明 .................................................................................................................................36
⼀⼂集成步骤
1.添加库⽂文件
(1) 将SDK⽬录下的libs⽬录所有⽂件拷贝到⼯程的libs(或lib)⽬录下。
(2) 选中libs(或lib)⽬录下的jar包,右键菜单中选择Build Path, 选择Add to Build Path将SDK添加
到⼯程的引⽤⽬录中。
2.修改Androidmanifest.xml⽂文件
在mainifest节点下添加
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
SDK接⼜调⽤主要流程
初始化SDK
创建设备
连接设备
开启实时监看 开启回放SD卡
启动监听 启动对讲
关闭监听 关闭对讲
关闭实时监看
断开设备
注销SDK
关闭回放SD卡
⼆⼂API接⼜
1.HiChipSDK类
包名路径前缀:com.hichip.sdk
init
原型:
public static void init(HiChipInitCallback callback)
功能:
初始化sdk 连接摄像机前必须初始化sdk
参数
callback: callback调⽤,主要包括操作成功和失败的回调,不能为null
⽰例:
HiChipSDK.init(new HiChipSDK.HiChipInitCallback() {
@Override
public void onSuccess() {
//Log.v("hihcip", "onSuccess:");
}
@Override
public void onFali(int errCode, int errCode2) {
//Log.v("hihcip", "onFali:"+errCode + " "+errCode2);
}
});
uninit
原型:
public static int uninit()
功能:
反初始化sdk 在app退出时必须调⽤
getSDKVersion
原型:
public static String getSDKVersion()
功能:
返回sdk版本号
Aes_Encrypt
原型:
public static int Aes_Encrypt(byte[] data,int len)
功能:
加密
Aes_Decrypt
原型:
public static int Aes_Decrypt(byte[] data,int len)
功能:
解密
HiChipSDK. HiChipInitCallback接⼝口
onSuccess
原型
public void onSuccess()
功能:
sdk初始化成功回调
onFali
原型
public void onFali(int errCode,int errCode2);
功能:
sdk初始化失败回调
HiCamera类
包名路径前缀:com.hichip.control
HiCamera构造⽅法
原型:
public HiCamera(String uid, String username,String password)
功能:
HiCamera构造⽅法
参数
uid: 设备uid 不能为null
username: 设备username 不能为null
password: 设备 password
⽰例:
new HiCamera("AAAA-000066-JNMED", "admin", "12345");
connect
原型:
public void connect()
功能:
连接摄像机
disconnect
原型:
public void disconnect()
功能:
断开摄像机
sendIOCtrl
原型:
public void sendIOCtrl(int type, byte[] data)
功能:
发送命令给摄像机
参数:
type: 命令类型
data : 命令数据
⽰例:
mCamera.sendIOCtrl(HiChipDefines.HI_P2P_GET_AUDIO_ATTR, null);
获取⾳频设置
mCamera.sendIOCtrl(HiChipDefines.HI_P2P_SET_AUDIO_ATTR,
HiChipDefines.HI_P2P_S_AUDIO_ATTR.parseContent(HiChipP2P.HI_P2P_SE_CMD
_CHN,1, 0, 0, 0, 50,50));
设置⾳频参数 如何组织byte数组请参考HiChipDefines
registerIOSessionListener
原型:
public boolean registerIOSessionListener(ICameraIOSessionCallback listener)
功能:
注册摄像机状态和命令的回调
参数:
listener: ICameraIOSessionCallback 回调接⼜,参考接⼜: ICameraIOSessionCallback
unregisterIOSessionListener
原型:
public boolean unregisterIOSessionListener(ICameraIOSessionCallback listener)
功能:
注销摄像机状态和命令的回调
参数:
listener: ICameraIOSessionCallback 回调接⼜,参考接⼜: ICameraIOSessionCallback
registerPlayStateListener
原型:
public void registerPlayStateListener(ICameraPlayStateCallback callback)
功能:
注册摄像机播放回调
参数:
listener: ICameraPlayStateCallback回调接⼜,参考接⼜: ICameraPlayStateCallback
unregisterPlayStateListener
原型:
public void unregisterPlayStateListener(ICameraPlayStateCallback callback)
功能:
注销摄像机播放回调
参数:
listener: ICameraPlayStateCallback回调接⼜,参考接⼜: ICameraPlayStateCallback
registerYUVDataListener
原型:
public void registerYUVDataListener(ICameraYUVCallback callback)
功能:
注册摄像机yuv回调 (注册后,库中不再显⽰视频,需⾃⼰重新显⽰。)
参数:
listener: ICameraYUVCallback回调接⼜,参考接⼜: ICameraYUVCallback
unregisterYUVDataListener
原型:
public void unregisterYUVDataListener(ICameraYUVCallback callback)
功能:
注销摄像机yuv回调
参数:
listener: ICameraYUVCallback回调接⼜,参考接⼜: ICameraYUVCallback
registerRPSAudioListener
原型:
public boolean registerRPSAudioListener(ICameraRPSAudioCallback listener)
功能:
注册摄像机状态和命令的回调
参数:
listener: ICameraRPSAudioCallback 回调接⼜,参考接⼜: ICameraRPSAudioCallback
unregisterRPSAudionListener
原型:
public boolean unregisterRPSAudioListener(ICameraRPSAudioCallback listener)
功能:
注销摄像机状态和命令的回调
参数:
listener: ICameraRPSAudioCallback 回调接⼜,参考接⼜: ICameraRPSAudioCallback
startLiveShow
原型:
public void startLiveShow(int quality,HiGLMonitor monitor)
功能:
开启实时监看
参数:
quality: 分辨率 0为第⼀码流,1为第⼆码流
monitor: 监视器,参考HiGLMonitor类
stopLiveShow
原型:
public void stopListening()
功能:
关闭实时监看
参数:
⽆
setLiveShowMonitor
原型:
public void setLiveShowMonitor(HiGLMonitor monitor)
功能:
设置实时监看监视器
参数:
monitor: 监视器,参考HiGLMonitor类
ResumeLiveShow
原型:
public void ResumeLiveShow()
功能:
监看画⾯时显⽰视频
参数:
PauseLiveShow
原型:
public void PauseLiveShow()
功能:
监看画⾯时暂停显⽰视频
参数:
getSnapshot
原型:
public Bitmap getSnapshot()
功能:
监看画⾯时截图,只能在实时画⾯时候调⽤.可以修改截图⼤⼩,宽⾼两参数中必须有⼀个⼩于视频宽
⾼
参数:
return: 返回当前监看画⾯的Bitmap
getSnapshot_EXT
原型:
public Bitmap getSnapshot_EXT(int flagsws,int outwidth,int outheight)
功能:
监看画⾯时截图,只能在实时画⾯时候调⽤
参数:
fagsws :是否缩放 1 缩放
outwidth :截图的宽
outheitht:截图的高
return: 返回当前监看画⾯的Bitmap
startTalk
原型:
public void startTalk()
功能:
开启对讲
参数:
⽆
stopTalk
原型:
public void stopTalk()
功能:
关闭对讲
参数:
⽆
startListening
原型:
public void startListening()
功能:
开启监听
参数:
⽆
startListening
原型:
public void stopListening()
功能:
关闭监听
参数:
⽆
ResumePlayAudio
原型:
public void ResumePlayAudio()
功能:
开启监听的声⾳
参数:
⽆
PausePlayAudio
原型:
public void PausePlayAudio()
功能:
关闭监听的声⾳
参数:
⽆
startPlayback
原型:
public void startPlayback(STimeDay startTime,HiGLMonitor monitor)
功能:
开启摄像机sd卡回放
参数:
startTime: 录像开始时间,HiChipDefines.startTime类,参考HiChipDefines
monitor: 监视器,参考HiGLMonitor类
⽰例:
Calendar cal = Calendar.getInstance(TimeZone.getDefault());
cal.setTimeInMillis(System.currentTimeMillis());
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
//发送命令取得录像列表
mCamera.sendIOCtrl(HiChipDefines.HI_P2P_PB_QUERY_START,
HiChipDefines.HI_P2P_S_PB_LIST_REQ.parseContent(0,
cal.getTimeInMillis(),
System.currentTimeMillis(),HiChipDefines.HI_P2P_EVENT_ALL));
private List<HiChipDefines.HI_P2P_FILE_INFO> file_list =
Collections.synchronizedList(new
ArrayList<HiChipDefines.HI_P2P_FILE_INFO>());
//camera注册命令回调camera.registerIOSessionListener(this);
@Override
public void receiveIOCtrlData(HiCamera arg0, int arg1, byte[] arg2,
int arg3) {
Bundle bundle = new Bundle();
bundle.putByteArray(HiDataValue.EXTRAS_KEY_DATA, arg2);
Message msg = handler.obtainMessage();
msg.what = HiDataValue.HANDLE_MESSAGE_RECEIVE_IOCTRL;
msg.obj = arg0;
msg.arg1 = arg1;
msg.arg2 = arg3;
msg.setData(bundle);
handler.sendMessage(msg);
}
//回调是异步,处理放在handler
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch(msg.what) {
case HiDataValue.HANDLE_MESSAGE_SESSION_STATE:
break;
case HiDataValue.HANDLE_MESSAGE_RECEIVE_IOCTRL:
{
if(msg.arg2==0) {
// MyCamera camera = (MyCamera)msg.obj;
Bundle bundle = msg.getData();
byte[] data =
bundle.getByteArray(HiDataValue.EXTRAS_KEY_DATA);
switch (msg.arg1) {
case HiChipDefines.HI_P2P_PB_QUERY_START:
if (data.length >= 12) {
// byte flag = data[8];
int cnt = data[9];
if (cnt > 0) {
for (int i = 0; i < cnt; i++) {
int pos = 12;
int size =
HiChipDefines.HI_P2P_FILE_INFO.sizeof();
byte[] t = new byte[24];
System.arraycopy(data, i*size + pos, t,
0, 24);
HiChipDefines.HI_P2P_FILE_INFO file_info
= new HiChipDefines.HI_P2P_FILE_INFO(t);
file_list.add(file_info);
}
adapter.notifyDataSetChanged();
}
//
}
break;
}
}
}
break;
}
}
};
//startTime为file_list数组取得的录像开始时间
mCamera.startPlayback(new HiChipDefines.STimeDay(startTime,
0),mMonitor);
stopPlayback
原型:
public void stopPlayback()
功能:
关闭摄像机sd卡回放
参数:
⽆
setLiveShowMonitor
原型:
public void setPlaybackMonitor(HiGLMonitor monitor)
功能:
设置录像回放监视器
参数:
monitor: 监视器,参考HiGLMonitor类
startDownloadRecording
原型:
public void startDownloadRecording(STimeDay startTime,String dir,String fileName)
功能:
⼿机下载录像摄像机录像⽂件
参数:
startTime:,摄像机上录像⽂件开始时间(从录像列表中取得)
dir:本地存放路径
fileName:⽂件名,⽆需加后缀(avi\mp4)
注:该下载功能不⽀持多⽂件同时下载,本地⽂件格式根据不同设备分AVI\MP4两种。在下载时需
处理断线。
startDownloadRecording2
原型:
public void startDownloadRecording(STimeDay startTime,String dir,String fileName,int filetype)
功能:
⼿机下载录像摄像机录像⽂件
参数:
startTime:,摄像机上录像⽂件开始时间(从录像列表中取得)
dir:本地存放路径
fileName:⽂件名,⽆需加后缀(avi\mp4)
filetype:为2时下载h264⽂件
注:该下载功能不⽀持多⽂件同时下载,本地⽂件格式根据不同设备分AVI\MP4\H264三种。在下载
时需处理断线。
stopDownloadRecording
原型:
public void stopDownloadRecording()
功能:
⼿机停⽌下载录像
参数:
startRecording
原型:
public void startRecording(String path)
功能:
⼿机录像,只能在实时监看监视器有画⾯的时候调⽤
参数:
path: 录像存放路径,录像格式为mp4,请后缀写成.mp4
stopRecording
原型:
public void stopRecording()
功能:
⼿机录像,只能在实时监看监视器有画⾯的时候调⽤
参数:
path: 录像存放路径,录像格式为mp4,请后缀写成.mp4
getConnectState
原型:
public int getConnectState()
功能:
获取当前摄像机连接状态
参数:
return: 当前摄像机连接状态 参考 摄像机连接状态枚举
getUid
原型:
public String getUid()
功能:
获取摄像机uid
参数:
return: 摄像机uid
setUid
原型:
public void setUid(String mUid)
功能:
设置摄像机uid
参数:
mUid: 摄像机uid
getUsername
原型:
public String getUsername ()
功能:
获取摄像机⽤户名
参数:
return: 摄像机⽤户名
setUsername
原型:
public void setUsername (String username)
功能:
设置摄像机⽤户名
参数:
username: 摄像机⽤户名
getPassword
原型:
public String getPassword()
功能:
获取摄像机密码
参数:
return: 摄像机密码
setPassword
原型:
public void setPassword (String password)
功能:
设置摄像机密码
参数:
password: 摄像机密码
getCommandFunction
原型:
public boolean getCommandFunction(int cmd)
功能:
获取摄像机是否⽀持指定命令
参数:
return: 是否⽀持制定命令
cmd: 命令号
Getmold
原型:
public boolean getmold
功能:
获取摄像机是否是鱼眼
参数:
return: 是否是鱼眼机
getChipVersion
原型:
public int getChipVersion()
功能:
获取摄像机是否⽀持指定命令
参数:
return: 摄像机芯⽚版本
public static final int CHIP_VERSION_HISI = 0; 海思
public static final int CHIP_VERSION_GOKE = 1; 国科
ShowPic
原型:
public int ShowPic( String picfilepath)
功能:
显⽰鱼眼图⽚
参数:picfilepath:本地图⽚路径
return: 是否成功
getDeciveInfo
原型:
public int getDeciveInfo()
功能:
获取摄像机信息
参数:
return: 摄像机信息HI_P2P_GET_DEV_INFO_EXT参考HiChipDefines
StartRecordingAudio
原型:
public void startRecordingAudio( String filepath)
功能:
显⽰鱼眼图⽚
参数:filepath:本地录⾳⽂件路径
return: 是否成功
StopRecordingAudio
原型:
public void stopRecordingAudio()
功能:
停⽌录⾳
参数:
StartPlayRecordAudio
原型:
public void startPlayRecordAudio( String filepath)
功能:
播放本地录⾳⽂件
参数:
filepath:本地录⾳⽂件路径
StopPlayRecordAudio
原型:
public void stopPlayRecordAudio
功能:
停⽌播放录⾳⽂件
参数:⽆
StartSendRecordAudio
原型:
public void startSendRecordAudio( String filepath)
功能:
显⽰鱼眼图⽚
参数:
filepath:本地路径
stopSendRecordAudio
原型:
public void stopSendRecordAudio
功能:
停⽌上传录⾳⽂件到设备
参数:
⽆
ICameraIOSessionCallback接⼝口
包名路径前缀:com.hichip.callback
摄像机连接状态枚举
public final static int CAMERA_CONNECTION_STATE_DISCONNECTED = 0;
public final static int CAMERA_CONNECTION_STATE_CONNECTING = 1;
public final static int CAMERA_CONNECTION_STATE_WRONG_PASSWORD = 3;
public final static int CAMERA_CONNECTION_STATE_LOGIN = 4;
public final static int CAMERA_CONNECTION_STATE_UIDERROR = -8;
receiveSessionState
原型:
public void receiveSessionState(final HiCamera camera, final int status);
功能:
回调摄像机连接状态 异步
参数:
camera: 返回的摄像机实体类
status: 返回摄像机连接状态 参考 摄像机连接状态枚举
receiveIOCtrlData
原型:
public void receiveIOCtrlData(final HiCamera camera, final int commandType, final byte[] data,final int
status);
功能:
摄像机命令的response回调 异步
参数:
camera: 返回的摄像机实体类
commandType: 返回命令类型 参考HiChipDefines
data:返回数据结构体
status:返回结果 0成功 -1失败
ICameraYUVCallback 接⼝口
包名路径前缀:com.hichip.callback
原型:
callbackYUVData
public void callbackYUVData(final HiCamera camera,final byte[] yuvdata,ind yuvdatalen);
功能:
返回YUV数据到UI上层
参数:
camera: 返回的摄像机实体类
yuvdata: 返回yuv数据
yuvdatalen:返回yuv数据长度
ICameraPlayStateCallback接⼝口
包名路径前缀:com.hichip.callback
摄像播放状态枚举
public final static int PLAY_STATE_START = 0;
public final static int PLAY_STATE_EDN = 1;
public final static int PLAY_STATE_POS = 2;
public final static int PLAY_STATE_RECORDING_START = 3;
public final static int PLAY_STATE_RECORDING_END = 4;
callbackState
原型:
public void callbackState(final HiCamera camera,int state,int width,int heigth);
功能:
回调摄像机播放状态 异步
参数:
camera: 返回的摄像机实体类
status: 返回摄像机播放状态 参考摄像播放状态枚举
width: 返回摄像机播放画⾯宽px
heigth: 返回摄像机播放画⾯宽px
callbackPlayUTC
原型:
public void callbackPlayUTC(final HiCamera camera,int time);
功能:
回调摄像机播放当前帧UTC时间戳 异步
参数:
camera: 返回的摄像机实体类
time: 返回utc时间错
ICameraDownloadCallback接⼝口
包名路径前缀:com.hichip.callback
下载状态枚举
public final static int DOWNLOAD_STATE_START = 0;
public final static int DOWNLOAD_STATE_DOWNLOADING = 1;
public final static int DOWNLOAD_STATE_END = 2;
public final static int DOWNLOAD_STATE_ERROR_PATH = 3;
public final static int DOWNLOAD_STATE_ERROR_DATA = 4;
callbackDownloadState
原型:
p u b l i cvoid callbackDownloadState(final HiCamera camera,int total,int
curSize,int state,String path);
功能:
回调下载状态 异步
参数:
camera: 返回的摄像机实体类
time: 返回⽂件总⼤⼩(与实际⼤⼩有偏差)
Cursize :已经下载的⼤⼩
State:状态
Path:下载⽂件的本地路径
注:实际下载过程中要根据state 的状态判断是否下载完成。
ICameraRPSAudioCallback接⼝口
包名路径前缀:com.hichip.callback
状态枚举
public final static int RPSAUDIO_STATE_START = 0;
public final static int RPSAUDIO_STATE_DOWNLOADING = 1;
public final static int RPSAUDIO_STATE_END = 2;
public final static int RPSAUDIO_STATE_ERROR_PATH = 3;
public final static int RPSAUDIO_STATE_ERROR_DATA = 4;
public final static int RPSAUDIO_STATE_RECORDERROR = 5;
public final static int RPSAUDIO_STATE_PLAYERROR = 6;
public final static int RPSAUDIO_STATE_SENDERROR = 7;
callbackRPSAudioState
原型:
public void callbackRPSAudioState(final HiCamera camera,int total,int
curSize,int state,String path);
功能:
回调状态
参数:
camera: 返回的摄像机实体类
time: 返回⽂件总⼤⼩
Cursize :已经播放、上传⼤⼩
State:状态
Path:⽂件的本地路径
HiGLMonitor类
包名路径前缀:com.hichip.control
播放监视器类
⽰例:
在布局⽂件添加控件
<com.hichip.control.HiGLMonitor
android:id="@+id/himonitor"
android:layout_width="300dp"
android:layout_height="200dp"
/>
HiGLMonitor glmonitor = (HiGLMonitor)findViewById(R.id. himonitor);
setMatrix
原型:
public void setMatrix(int x, int y, int w, int h)
功能:
缩放画布
参数:
username: 摄像机⽤户名
x 左
y 下
w 宽
h ⾼
SetViewType
原型:
public void SetViewType(int view_type)
功能:
设置视频显⽰模式
参数:
view_type 0、1 分别正常、鱼眼
SetViewType_EXT
原型:
public void SetViewType_EXT(int view_type,int flens_type)
功能:
设置视频显⽰模式及镜头类型
参数:
view_type 0、1 分别正常、鱼眼
flens_type 镜头类型
SetScreenSize
原型:
public void SetScreenSize(int width, int height)
功能:
设置视频显⽰宽⾼
参数:
width:宽
Height: ⾼
SetCruise
原型:
public void SetCruise(boolean flag)
功能:
设置是否巡航
参数:
flag:
SetCruise
原型:
public void SetCruise(boolean flag, int speed)
功能:
设置是否巡航,速度
参数:
flag:
speed:
SetPosition
原型:
public int SetPosition(boolean flag, int No)
功能:
设置双击缩放及区域
参数:
flag:
No:区域
SetZoom
原型:
public void SetZoom(boolean flag)
功能:
设置是否缩放
参数:
flag:
SetGesture
原型:
public void SetGesture(int gesture)
功能:
设置移动
参数:
gesture:⽅向
SetGesture
原型:
public void SetGesture(int gesture, int Screen_No)
功能:
设置区域移动
参数:
gesture:⽅向
No:区域
SetShowScreenMode
原型:
public int SetShowScreenMode(int mode, int screen_num)
功能:
设置区域移动
参数:
mode:模式
screen_num:形状
GetFishLager
原型:
public float GetFishLager()
功能:
获取缩放倍数
参数:
HiPushSDK类
包名路径前缀:com.hichip.push
HiPushSDK构造⽅法
原型:
public HiPushSDK(String xingeToken,String cameraUid,String company,OnPushResult onPushResult,String
pushServer)
功能:
推送库初始化
参数:
xingeToken: 信鸽token
cameraUid: 摄像机UID
Company:公司名
onPushResult: 搜索接过的回调接⼜ 参考HiPushSDK.OnPushResult
pushServer:推送服务器地址。
HiPushSDK构造⽅法
原型:
HiPushSDK(Context context,String xingeToken, String cameraUid, String company, String pushname,
OnPushResult onPushResult, String pushServer)
功能:
推送库初始化
参数:
xingeToken: 信鸽token
cameraUid: 摄像机UID
Company:公司名
pushname:推送平台
onPushResult: 搜索接过的回调接⼜ 参考HiPushSDK.OnPushResult
pushServer:推送服务器地址。
bind
原型:
public void bind()
功能:
绑定推送 (成功后会收到推送消息)
参数:
⽆
unbind
原型:
public void unbind(int subid)
功能:
取消推送 (成功后不再会收到推送消息)
参数:
⽆
setPushServer
原型:
public string setPushServer(String pushServer)
功能:
设置推送地址
参数:
pushServer
setPushServer
原型:
public string setPushServer(String pushServer,int force,int pushnum)
功能:
设置推送地址
参数:
pushServer
force 是否强制修改 0、1
pushnum ⽤第⼏个推送地址(force ⾮强制时有⽤,即 0 ) 暂时没⽤
getPushServer
原型:
public string getPushServer()
功能:
获取到设备的推送地址
参数:
推送地址
注意:先调⽤HiPushSDK 、setPushServer 时,如果是新添加的UID 字段,则⽤从服务器获取到的⽽
直接返回,如果是已经有的字段则使⽤设置参数。
HiPushSDK.OnPushResult接⼝口
原型:
public void pushBindResult(int subID,int type,int result);
功能:
开始搜索摄像机 异步
参数:
subID: 注册成功返回唯⼀id
type:类型:绑定/取消 返回值参考绑定类型枚举
result:返回成功失败 参考绑定结果枚举
绑定类型枚举
public static final int PUSH_TYPE_BIND = 0;
public static final int PUSH_TYPE_UNBIND = 1;
绑定结果枚举
public static final int PUSH_RESULT_SUCESS = 0;
public static final int PUSH_RESULT_FAIL = -1;
public static final int PUSH_RESULT_NULL_TOKEN = -2;
注:(bind/unbind)成功后需检测是否支持HI_P2P_ALARM_TOKEN_REGIST、
HI_P2P_ALARM_TOKEN_UNREGIST ,能支持则向设备发送。
HiSearchSDK类
包名路径前缀:com.hichip.tools
搜索局域⽹上的摄像机
HiSearchSDK构造⽅法
原型:
public HiSearchSDK(OnSearchResult onSearchResult)
功能:
搜索库初始化
参数:
onSearchResult: 搜索接过的回调接⼜ 参考HiSearchSDK.OnSearchResult
search
原型:
public void search()
功能:
开始搜索摄像机
参数:
⽆
HiSearchSDK构造⽅法
原型:
public HiSearchSDK(ISearchResult iSearchResult)
功能:
搜索库初始化,⾮阻塞模式
参数:
onSearchResult: 搜索接过的回调接⼜ 参考HiSearchSDK.ISearchResult
search2
原型:
public void search2()
功能:
开始搜索摄像机,⾮阻塞模式,⽴即返回
参数:
⽆
HiSearchSDK.HiSearchResult类
实体类,属性如下
public String uid;
public String ip;
public int port;
public String name;
public String version;
HiSearchSDK.OnSearchResult接⼝口
原型:
public void searchResult(List<HiSearchResult> searchList);
功能:
开始搜索摄像机 异步
参数:
searchList: 返回HiSearchResult实体类列表 参考HiSearchSDK.HiSearchResult
HiSearchSDK.ISearchResult接⼝口
原型:
public void onReceiveSearchResult(HiSearchResult search);
功能:
开始搜索摄像机 ⾮阻塞
参数:
searchList: 返回HiSearchResult实体类列表 参考HiSearchSDK.HiSearchResult
HiSmartWifiSet类
包名路径前缀:com.hichip.tools
配置摄像机Wifi
HiStartSmartConnection
原型:
public static native int HiStartSmartConnection(String SSID, String Password, byte Auth);
功能:
开始配置WiFi
参数:
SSID: wifi SSID
Password: wifi密码
Auth: wifi类型,这⾥填4
HiStopSmartConnection
原型:
public static native int HiStopSmartConnection();
功能:
结束配置WiFi
参数:
⽆
Packet类
包名路径前缀:com.hichip.tools
数据打包类
注意java的数据是big-endian 摄像机发过来的数据是little-endian 所以转换数据时请使⽤
Packet类
byteArrayToShort_Little
功能:
摄像机little-endian byte数组short转换java short
byteArrayToInt_Little
功能:
摄像机little-endian byte数组int转换java int
byteArrayToLong_Little
功能:
摄像机little-endian byte数组long转换java long
longToByteArray_Little
功能:
java long转换成little-endian byte数组
intToByteArray_Little
功能:
java int转换成little-endian byte数组
shortToByteArray_Little
功能:
java short转换成little-endian byte数组
byteToFloat
功能:
摄像机little-endian byte数组float转换java float
floatToByte
功能:
java float转换成little-endian byte数组
PlayLocal类
registerPlayLocalStateListener
原型:
public void registerPlayLocalStateListener(PlayLocalFileCallback callback)
功能:
注册回放转换回调
参数:
unregisterPlayLocalStateListener
原型:
public void unregisterPlayLocalStateListener(PlayLocalFileCallback callback)
功能:
注销回放转换回调
参数:
setLiveShowMonitor
原型:
public void setLiveShowMonitor(HiGLMonitor monitor)
功能:
设置播放窗⼜
参数:
monitor 显⽰窗⼜ 可以⽤两种⽅式加载(xml add)
StartPlayLocal
原型:
public int StartPlayLocal(String filepath)
功能:
开始播放
参数:
filepath 本地⽂件路径
StopPlayLocal
原型:
public int StopPlayLocal()
功能:
停⽌播放
参数:
GetFileTime
原型:
public int GetFileTime(String filepath)
功能:
获取本地⽂件时长
参数:
filepath 本地⽂件路径
PlayLocal_Seek
原型:
public int PlayLocal_Seek(int seektime,boolean seeking)
功能:
拖动
参数:
Seektime :快进时间
Seeking : 拖动状态 拖动中为true 结束为false
PlayLocal_Speed
原型:
public void PlayLocal_Speed(int speedvalue ,int interval)
功能:
快进
参数:
Speedvalue : 快进等级0-20,在相同interval 情况下值越⼤越快.
0 正常播放,interval 值⽆⽤。
1 、2 两个等级为I P 帧都播放,interval 为两帧间间隔。
3-20 只播放I帧,延时时间算法:(20-speedvalue)*interval 。
Interval : 每两个等级间时间间隔,默认50 ms 。
注意:从快进到正常播放时,请调⽤PlayLocal_Seek 回放快进播放的同⼀时间。
PlayLocal_pause
原型:
public void PlayLocal_pause()
功能:
暂停播放
参数:
PlayLocal_Resume
原型:
public void PlayLocal_Resume()
功能:
继续播放
参数:
Start2Mp4
原型:
public int Start2Mp4(String filepath,String outfilepath)
功能:
开始转换
参数:
Filepath 待转换⽂件路径
Outfilepath 转换后mp4⽂件路径
Stop2Mp4
原型:
public int Stop2Mp4()
功能:
停⽌转换
参数:
PlayLocalFileCallback类
callbackplaylocal
原型:
public void callbackplaylocal(int width,int height,int filetime,long sursec,int audiotype,int state);
功能:
回放转换回调
参数:
width ⽂文件中视频宽
height ⽂文件中视频⾼高
filetime ⽂文件时⻓长
sursec 当前播放时间
audiotype ⽂文件中⾳音频类型
state 状态
回放状态枚举
public final static int PLAYLOCAL_STATE_ERROR = -1;
public final static int PLAYLOCAL_STATE_OPEN = 0;
public final static int PLAYLOCAL_STATE_START = 1;
public final static int PLAYLOCAL_STATE_ING = 2;
public final static int PLAY_STATE_END= 3;
public final static int PLAY_STATE_STOP = 4;
转换状态枚举
public final static int LOCAL2MP4_STATE_ERROR =-11;
public final static int LOCAL2MP4_STATE_OPEN =10;
public final static int LOCAL2MP4_STATE_START =11;
public final static int LOCAL2MP4_STATE_ING =12;
public final static int LOCAL2MP4_STATE_END =13;
public final static int LOCAL2MP4_STATE_STOP =14;
三⼂⽂档说明
hi_p2p_ipc_protocol.h 为命令数据格式头⽂件
HiChipDefines.java 为命令数据格式转换为java格式
Packet.java 为数据转换⽅法
V2.0.0
当前版本主要有如下更新:
添加下载摄像机上录像⽂件到⼿机。
添加异常处理。
Startliveshow startplayback 两个⽅法都要异步调⽤,以免阻UI (解决第⼆次打开还看到第⼀
次视频画⾯)
在实时、回放视频都必须处理断线。
V2.0.1
当前版本主要有如下更新:
停⽌止下载时不不等解析完成⽽而直接退出。调⽤用停⽌止下载时,不不在处理理缓冲区中数据,为了了快速退出下载。
V2.0.2
当前版本主要有如下更新:
添加监听声⾳音是否播放功能 。打开监听后,可以在本地控制是否播放出来
开始下载前清空本地、⽹网络缓冲数据,停⽌止下载时退出p2p Read 。清空前⼀一次没有接收完的数据,根据
⽹网络情况,可能还是会出现不不能清空的情况。
V2.0.3
当前版本主要有如下更新:
解析数据前判断数据⻓长度。解析设备返回的数据前,对数据⻓长度进⾏行行判断,⻓长度不不对时,不不作任何处理理。
在SDK 中加上判断,APP 不不⾄至于Crash ,但UI 上层应先判断receiveIOCtrlData(int cmdType, byte[] data,
int status) status 等于-1 时,或者data.length ⼩小于等于0 的情况,就不不要调⽤用解析。
V2.0.4
当前版本主要有如下更新:
在V2.0.3 版本上优化对解析前数据的判断。
V2.3.0(特殊版本)
当前版本主要有如下更新:
1、添加对IIII JJJJ KKKK 的⽀持
2、修改流控参数及优化算法
替换hisdk.jar及hisdkqos.so
V2.1.0
当前版本主要有如下更新:
1、添加下载h264 ⽂件功能(下载更快,在下载过程中没有进⾏转换)。
2、添加播放本地mp4\h264\avi⽂件功能。
3、添加本地h264\avi转成mp4⽂件功能。
4、播放aac 解码后的pcm 后,进⾏拆分,每次320的长度进⾏播放,不然声⾳会异常。
注意:
1、当前设备有两种录像格式(AVI\H264),调⽤startDownloadRecording2()的filetype 来区分。
filetype !=2时,下载的⽂件分为AVI\MP4 。filetype== 2时,下载的⽂件分为AVI\H264 。
2、回放在PlayLocal类中。快进⽅法:PlayLocal_Speed 可根据⾃⼰要求调整快进的时间间隔\
等级。(⽤⼀、⼆等级时请注意不能让每秒播放的帧数超过30帧)。speed 结束后,调⽤seek
⽅法让视频跳到当前播放时间,不然从快进到正常就会跳时间。
3、回放⽤法与实时看视频⼀样。
4、因H264 AVI(部分⽤户没有安装第三⽅播放器可能不能播放)不能播放,固添加了转成
MP4功能。
具体参考demo
V2.1.1
当前版本主要有如下更新:
1、添加对RF⽀持,添加获取报警LOG
2、本地录像没有声⾳ 修改解码 G711 G726 完成时把pcm copy 到320 的byte[] 中。
V2.1.2
当前版本主要有如下更新:
优化回放快进时1 2 两个等级
V3.0.0
当前版本主要有如下更新:
1 修改打开监听、对讲等还没有收到设备回复时就关闭引发的问题 。(快速打开关闭)
2 修改参数解决滑动抖动,控制是否可以放⼤、移动
3 替换libfisheye.so解决不同分辨率之间切换时显⽰不正常。
V3.0.1
当前版本主要有如下更新:
1 添加获取鱼眼的能⼒集
2 兼容V6.1.4.1.1-20150214 返回数据长度不够结构体长度的修改判断长度
3、修改鱼眼图像左右反的问题
4、碗形视图巡航画⾯改为逆时针转动 与圆、柱保持⼀样
V3.0.2
当前版本主要有如下更新:
修改读取本地AVI⽂件总时长的bug
V3.0.3
当前版本主要有如下更新:
1、⽀持⾃动更新服务器字串功能
2、判断是鱼眼,图像等级强制为1
3、向服务器获取时,添加发送内容。
4、连接时查找UID 前缀先转⼤写
5、每次打开程序时,检测本地⽂件内容格式是否正确,不正确则删除。
注意:后期添加UID字段时不⽤再更新SDK即可⽀持使⽤。
V3.1.0
当前版本主要有如下更新:
添加鱼眼横屏回放功能(⽀持不同分辨率)
V3.1.1
当前版本主要有如下更新:
1 添加解码mjpeg 的代码
2 鱼眼模式下:圆柱与碗同⽅向转动,⼆画⾯⽀持分别转动。
V3.1.2
当前版本主要有如下更新:
添加AES+Base64 加密接⼜
V3.1.3
当前版本主要有如下更新:
修改流控时帧数与I帧间隔不成⽐例的Bug
V3.1.4
当前版本主要有如下更新:
1 把已经存在的UID 加载到内存中,连接时先从内存中查找,如果找不到,就判断⽂件是
否存在,若存在判断⽂件内容是否正确,不正确删除⽂件,若⽂件不存则创建⽂件。
2 初始化时不判断⽂件
V3.1.5
当前版本主要有如下更新:
修改鱼眼壁装显⽰参数
V3.1.6
当前版本主要有如下更新:
添加对SECRUI UID 的⽀持。
V3.1.7
当前版本主要有如下更新:
1 修改获取新添加字段服务器推送地址的问题。(服务器添加UID字段)。
2 把IIII "JJJJ" "KKKK", "MMMM 加载到内存中
3 修改uidlist 路径,卸载程序时能删除这个⽂件
V3.1.8
当前版本主要有如下更新:
打开对鱼眼功能的限制。(任何客户想⽤鱼眼功能,都能在⾃⼰的APP 中添加。)
V3.2.0
当前版本主要有如下更新:
1 新镜头壁装 2 修改以前壁装模式 3 解决在线回放获取宽⾼错误时app 崩溃
V3.2.1
当前版本主要有如下更新:
1 添加wifi 相关的扩展接⼜
2 如果是鱼眼打开视频前Quality 都设置为1
V3.2.2
当前版本主要有如下更新:
在HiSmartWifiSet 中加载⼀次库
1 声⾳解码线程判断线程是否为null
2 在⾳视频接收线程,判断new buf[] 长度
3 在创建mp4 ⽂件中初始化AAC 时判断是否成功
4 record.init 失败后 并添加null 判断
5 柱与碗左右⼀⾄
6 修改mmmm 字段服务器
V3.2.3
当前版本主要有如下更新:
1 在接收到设置视频参数时加条件判断,如果是打开视频才发送命令。
2 如果是鱼眼,流控最⼤帧数15 ,超过则不发送流控
3 添加p2p 成功回调参数
V3.2.4
当前版本主要有如下更新:
1 加⼤下载、本地回放单帧缓冲⼤⼩
2 修改rec_mp4 单帧缓冲⼤⼩,并在读取时判断是否⼤于单帧缓冲⼤⼩
3 修改rec_264单帧缓冲⼤⼩
4 disconnect 前调⽤XP2P_Connect_Break
V3.2.5
当前版本主要有如下更新:
1 打开实时视频判断宽⾼
2 替换fish.a 库 (裁剪视频⿊边)
3 (pcmtoaac close 时判断是否为null)
4 修改回放mp4时 stss 内存分配⼤⼩
V3.2.6
当前版本主要有如下更新:
1 搜索时增加发送次数
2 修改线程内存泄露
3 修改323镜头⼿势操作
4 添加强制修改推送服务器接⼜
V3.2.7
当前版本主要有如下更新:
1 增加新能⼒集
2 修改AVI读取bug
3 替换鱼眼库
V3.2.8
当前版本主要有如下更新:
1 添加抓拍时图⽚缩放功能接⼜
2 初始化鱼眼库时添加对鱼眼设备类型判断
3 添加本地⽂件时长获取接⼜
V3.2.9
当前版本主要有如下更新:
修改鱼眼300W的bug
V3.3.0
当前版本主要有如下更新:
本地回放⽀持G726⾳频格式的视频⽂件
V3.3.1
当前版本主要有如下更新:
添加新能⼒集
V3.3.2
当前版本主要有如下更新:
替换鱼眼库
V3.3.3
当前版本主要有如下更新:
添加T、W、U三个字段
V3.3.4
当前版本主要有如下更新:
替换SY3.0.X库
V3.3.5
当前版本主要有如下更新:
修改登录时密码判断⽅法
V3.3.6
当前版本主要有如下更新:
1 添加获取sd 卡格式化状态
2 替换新鱼眼库(⽀持鱼眼新镜头)
3 smart配置bug
V3.3.7
当前版本主要有如下更新:
修改鱼眼新镜头类型
V3.3.8
当前版本主要有如下更新:
修改鱼眼没有半径引发的Bug
V3.3.9
当前版本主要有如下更新:
修改⾃动更新服务器字串功能
V3.4.0
当前版本主要有如下更新:
修改密码为空崩溃问题
V3.4.0.1
当前版本主要有如下更新:
⽀持UID为NNNN开头的设备
V3.4.0.2
当前版本主要有如下更新:
修改频繁切换分辨率可能崩溃问题
V3.4.0.3
当前版本主要有如下更新:
兼容密码正确却返回密码错误的部分设备
V3.5.0
当前版本主要有如下更新:
申请⼤内存时处理异常
初始化失败在连接时再次初始化
内推消息解密
V3.5.1
当前版本主要有如下更新:
添加透传功能(UI上层添加对今天HI_P2P_GET_FUNCTION的处理,后期添加新的命令时,不⽤修改SDK)
V3.5.2
当前版本主要有如下更新:
添加⾃定义声⾳报警功能(录⾳、试听、上传)
V4.0.0
当前版本主要有如下更新:
⽀持H265视频格式(根据系统版本、⼿机型号调节软硬解码、流控数据。Android6.0 及以上H265⽤硬件解
码)
V4.0.1
当前版本主要有如下更新:
下载⽂件时判断视频格式
V4.0.2
当前版本主要有如下更新:
修正本地回放AVI的bug,添加本地录像时异常处理
V4.0.3
当前版本主要有如下更新:
解决本地录像偶尔失败
V4.0.4
当前版本主要有如下更新:
优化H265在线回放、AVI本地回放
V4.0.5
当前版本主要有如下更新:
解决中⽂件乱码及结尾不能⽤空格问题
V4.0.6
当前版本主要有如下更新:
解决本地录像异常
.
注1:
若从3.X升级到4.0.0以前版本时,如
⽆需求添加新功能, 则直接替换
SDK即可,另请⼀定按Demo中⽅法
设置推送地址。
(hi_p2p_ipc_protocol.h头⽂件中注明
功能添加⽇期)。请查看Demo 中透
传部分代码。
注2:
推送相关
1、打开推送,绑定成功后保存subid
并把地址发给设备本地保存状态。
2、下次打开app连接成功,判断推送
是开的状态,就重新绑定,成功后
保存subid 并把地址发给设备本地保
存状态。
3、删除设备判断推送是开的状态并
解绑 本地保存状态。
4、收到消息时判断本地有没有这个
UID ,如没有则不显⽰消息并解
邦 。
注3:
升级到4 . x . x版本注意动态库的替
换,只需Demo 中所含动态库即可(系
统版本6 . 0及以上H265全⽤硬件解
码)。
同类文章排行
- 32700磷酸铁锂60AH产品规格书参数
- 32650/32700磷酸铁锂电池和18650三元锂电池哪个好?
- 18650锂电池和32650磷酸铁锂电池有什么区别,优点
- 32650磷酸铁锂电池与18650三元锂电池到底那个好?
- DS-2CD7A427FWD-XZ(S)(/JM)人脸识别
- 海康威视监控球机有4G一体的么?
- 太阳能监控阴天或者雨天供电不足需要加大电池
- 海康威视太阳能监控消耗一天要多少4G流量?
- 海康威视低功耗4G球机太阳能监控DS-NACN54220I-DG
- 海康太阳能iDS-NJCN58225IH-AW/GLT(D)水尺读取摄像机
最新资讯文章
- 太阳能储能供电长时间不使用注意事项
- 太阳能储能供电系统如何增加BMS管理
- 什么是储能电池的BMS管理系统
- 太阳能供电系统家用和工程项目有什么区别
- 太阳能储能供电系统家用有什么要求
- 家用储能锂电池供电系统出口有什么要求和资质
- 机架式储能锂电池和堆叠式储能锂电池有什么区
- 家用储能锂电池用磷酸铁锂电池怎么样
- 太阳能供电一体化设备
- 大单体和32700磷酸铁锂电池有什么区别
- 32650和32700磷酸铁锂电池有什么区别
- 磷酸铁锂电池好还是三元电池好
- 未来太阳能供电发展是什么样的
- 太阳能通信基站储能供电系统的优势。
- 一般家用供电需要多大的太阳能储能系统
- 冬天对太阳能供电系统有哪些影响
- 太阳能监控供电系统中的电池能用多久
- 家用太阳能储能供电系统设计方案
- 太阳能供电系统在智慧交通应用分析,及市场前
- 智慧太阳能监控供电系统阴天能正常工作么