Tange Cloud for Device
 Rev.333
载入中...
搜索中...
未找到
API用到的常数和枚举

专题

 TciCB::on_status()回调状态码
 
 

宏定义

#define IsDoorBellEvent(e)
 
#define ECSVC_IS_STORE(e)
 
#define ECSVC_IS_AI(e)
 
#define ECSVC_IS_WXVOIP(e)
 

枚举

enum  SIMCARDTYPE
 sim 卡类型 更多...
 
enum  PMODE
 低功耗设备的工作模式 更多...
 
enum  ETRANSSERVICE
 传输内容 更多...
 
enum  TCSYSOPTION
 SDK选项常数 更多...
 
enum  ECALLERTYPE
 呼叫者类型 更多...
 
enum  RTMTYPE
 插入到媒体流(实时或回放)或命令通道中的消息类型. 更多...
 
enum  ECEVENT
 上报事件类型. 更多...
 
enum  ECALLSTATE
 Doorbell call state 更多...
 
enum  ECSERVICETYPE
 云服务类型 更多...
 
enum  ECSVCTYPE
 云服务子类型 更多...
 
enum  ECG4STATE
 4G状态 更多...
 
enum  ECBUFFERHINT
 云上传文件队列长度. 更多...
 

Media Type

enum  TCMEDIA
 媒体类型枚举常数 更多...
 
#define TCMEDIA_IS_VIDEO(mt)
 是否视频媒体类型
 
#define TCMEDIA_IS_AUDIO(mt)
 是否音频媒体类型
 

音频采样格式

int TciSendFrame(int stream, TCMEDIA mt, const uint8_t *pFrame, int length, uint32_t ts, int uFrameFlags);
int TciSendFrameEx(int channel, int stream, TCMEDIA mt, const uint8_t *pFrame, int length, uint32_t ts, int uFrameFlags);
int TciSendPbFrame(p2phandle_t handle, uint32_t id_mt, const uint8_t *frame, int len, uint32_t timestamp, int uFrameFlags);

上面接口的最后一个参数 uFrameFlags ,当媒体类型为音频时,为音频采样格式.

该格式由采样频率、采样位宽和声道数据组成:

uFrameFlags = (samplerate << 2) | (datebits << 1) | channel

uFrameFlags 为0时,SDK会将其改为默认配置.

本系统默认的音频采样格式为 8000/16位/单声道, 对应

uFrameFlags = (AUDIO_SAMPLE_8K << 2) | (AUDIO_DATABITS_16 < 1) | AUDIO_CHANNEL_MONO = 2
@ AUDIO_CHANNEL_MONO
单声道
@ AUDIO_SAMPLE_8K
8000
@ AUDIO_DATABITS_16
16 bits
enum  ENUM_AUDIO_SAMPLERATE
 音频采样频率常数 更多...
 
enum  ENUM_AUDIO_DATABITS
 
enum  ENUM_AUDIO_CHANNEL
 音频采样位宽常数 更多...
 

SDK状态标志

#define TGSS_F_CS_INSERVICE   0x00000001
 云文件正在上传或者新文件正在打包
 
#define TGSS_F_P2P_CONNECTED   0x00000002
 有用户连接
 
#define TGSS_F_P2P_STREAMING   0x00000004
 用户正在拉流
 
#define TGSS_F_P2P_INSETTING   0x00000008
 用户处在设置界面
 
#define TGSS_F_BS_UPLOADING   0x00000010
 后备存储正在上传
 
#define TGSS_F_CALL_PENDING   0x00000020
 呼叫正在等待处理
 
#define TGSS_F_IN_CONVERSATION   0x00000040
 呼叫通话中
 

Wifi 配置获取方式

#define GWM_QRCODE   0x1
 二维码
 
#define GWM_AP   0x2
 AP或蓝牙模式
 

图片类别指示

#define PIC_USE_THUMBNAIL   0
 缩略图。大小不超过320*240
 
#define PIC_USE_AI_BD   1
 人形检测。图片大小约640*352
 
#define PIC_USE_AI_FD   2
 人脸检测
 
#define PIC_HIGH_RES   3
 高清晰度
 

视频帧标志

#define FF_KEYFRAME   0x00000001
 关键帧
 
#define FF_TIMELAPSE   0x00000002
 非连续帧(缩时)
 

详细描述

宏定义说明

◆ TGSS_F_CS_INSERVICE

#define TGSS_F_CS_INSERVICE   0x00000001

云文件正在上传或者新文件正在打包

在文件 TgCloudApi.h109 行定义.

◆ TGSS_F_P2P_CONNECTED

#define TGSS_F_P2P_CONNECTED   0x00000002

有用户连接

在文件 TgCloudApi.h110 行定义.

◆ TGSS_F_P2P_STREAMING

#define TGSS_F_P2P_STREAMING   0x00000004

用户正在拉流

在文件 TgCloudApi.h111 行定义.

◆ TGSS_F_P2P_INSETTING

#define TGSS_F_P2P_INSETTING   0x00000008

用户处在设置界面

在文件 TgCloudApi.h112 行定义.

◆ TGSS_F_BS_UPLOADING

#define TGSS_F_BS_UPLOADING   0x00000010

后备存储正在上传

在文件 TgCloudApi.h113 行定义.

◆ TGSS_F_CALL_PENDING

#define TGSS_F_CALL_PENDING   0x00000020

呼叫正在等待处理

在文件 TgCloudApi.h114 行定义.

◆ TGSS_F_IN_CONVERSATION

#define TGSS_F_IN_CONVERSATION   0x00000040

呼叫通话中

在文件 TgCloudApi.h115 行定义.

◆ GWM_QRCODE

#define GWM_QRCODE   0x1

二维码

在文件 TgCloudConst.h86 行定义.

◆ GWM_AP

#define GWM_AP   0x2

AP或蓝牙模式

在文件 TgCloudConst.h87 行定义.

◆ PIC_USE_THUMBNAIL

#define PIC_USE_THUMBNAIL   0

缩略图。大小不超过320*240

在文件 TgCloudConst.h93 行定义.

◆ PIC_USE_AI_BD

#define PIC_USE_AI_BD   1

人形检测。图片大小约640*352

在文件 TgCloudConst.h94 行定义.

◆ PIC_USE_AI_FD

#define PIC_USE_AI_FD   2

人脸检测

在文件 TgCloudConst.h95 行定义.

◆ PIC_HIGH_RES

#define PIC_HIGH_RES   3

高清晰度

在文件 TgCloudConst.h96 行定义.

◆ FF_KEYFRAME

#define FF_KEYFRAME   0x00000001

关键帧

在文件 ec_const.h14 行定义.

◆ FF_TIMELAPSE

#define FF_TIMELAPSE   0x00000002

非连续帧(缩时)

在文件 ec_const.h15 行定义.

◆ TCMEDIA_IS_VIDEO

#define TCMEDIA_IS_VIDEO ( mt)
值:
((mt) && (((mt)<TCMEDIA_VIDEO_MAX && (mt)>TCMEDIA_AUDIO_G711A) || (mt)==TCMEDIA_VIDEO_H264))
@ TCMEDIA_VIDEO_H264
H.264 "h264"
@ TCMEDIA_AUDIO_G711A
G.711A "g711a" "alaw"

是否视频媒体类型

在文件 ec_const.h56 行定义.

◆ TCMEDIA_IS_AUDIO

#define TCMEDIA_IS_AUDIO ( mt)
值:
((mt) && ((mt)==TCMEDIA_AUDIO_G711A || ((mt)>=TCMEDIA_AUDIO_ULAW && (mt)<TCMEDIA_AUDIO_MAX)))
@ TCMEDIA_AUDIO_ULAW
G.711U "g711u" "ulaw"

是否音频媒体类型

在文件 ec_const.h58 行定义.

◆ IsDoorBellEvent

#define IsDoorBellEvent ( e)
值:
@ ECEVENT_CALL2
[call.2]呼叫按键2(=26)
@ ECEVENT_CALL
[call] (=16)

在文件 ec_const.h168 行定义.

◆ ECSVC_IS_STORE

#define ECSVC_IS_STORE ( e)
值:
((e) >= EC_SVC_EVENT && (e) <= EC_SVC_IMAGE_N)
@ EC_SVC_IMAGE_N
保存N张图片
@ EC_SVC_EVENT
事件录像

在文件 ec_const.h209 行定义.

◆ ECSVC_IS_AI

#define ECSVC_IS_AI ( e)
值:
((e) >= EC_AI_SVC_MIN && (e) <= EC_AI_SVC_OBJECTS)

在文件 ec_const.h210 行定义.

◆ ECSVC_IS_WXVOIP

#define ECSVC_IS_WXVOIP ( e)
值:
((e) == EC_WX_VOIP)

在文件 ec_const.h211 行定义.

枚举类型说明

◆ SIMCARDTYPE

sim 卡类型

枚举值
SIMT_PHY 

物理卡

SIMT_ESIM 

ESIM

SIMT_VSIM 

vsim卡

在文件 TgCloudApi.h24 行定义.

◆ PMODE

enum PMODE

低功耗设备的工作模式

枚举值
PM_ALLON 

常电模式。非低功耗设备的默认模式

PM_SLEEPABLE 

系统可休眠(会收到STATUS_IDLE状态回调。这是低功耗设备的默认模式)

PM_NETDOWN 

主控正常工作,网络模块进入休眠模式

在文件 TgCloudApi.h31 行定义.

◆ ETRANSSERVICE

传输内容

在文件 TgCloudApi.h38 行定义.

◆ TCSYSOPTION

SDK选项常数

枚举值
TCOPT_DISABLE_UPLOAD_WHEN_VIEWING 

有人观看时禁止上传 类型: int*

  • 1 disable
  • 0 Allow parallel operation
TCOPT_BUFFER_QUEUE_SIZE 

云存储缓冲文件数.

类型: int*: 1~6

TCOPT_TRANS_MEDIA_TYPE 

传输内容 类型: int*:

  • 0 live video/audio
  • 1 picture+audio
  • 2 picture only. ETRANSSERVICE.
TCOPT_BACKSTORE_SAVEDAYS 

backstore 存储天数 类型 int*:

  • 0 同云服务保存天数
  • >0 自定义的存储天数.不超过服务规定的天数
TCOPT_MAX_DATAFILE_SIZE 

最大云存data文件。超出的帧会丢弃.

类型: int*

TCOPT_ONLY_REPORT_AI_EVENT 

仅上报AI事件.

类型: int*

TCOPT_NO_STREAMING_WITHOUT_ACCEPTING_CALL 

用户没有应答不能拉流.

用于楼宇对讲 类型: int *

TCOPT_PRERECORD_LENGTH 

事件云存预录时间长度, 单位:秒.

类型: int * 说明: 默认为5". 实际长度受云存缓存大小限制。记住录像总时长是不变的.

在文件 TgCloudApi.h46 行定义.

◆ ECALLERTYPE

呼叫者类型

枚举值
CALLER_TANGE 

探鸽

CALLER_WEIXIN 

微信小程序

在文件 TgCloudConst.h100 行定义.

◆ RTMTYPE

enum RTMTYPE

插入到媒体流(实时或回放)或命令通道中的消息类型.

  • 插入命令流的是通知类信息,用TciSendRtMsg()发送一个 RTMSG_t 结构
  • 插入媒体流的信息用于辅助描述流相关的事件或提供额外信息, 调用 TciSendLiveMessage()TciSendPbMessage(), 发送的是 RTMSGHEAD_t 结构 有的消息是设备SDK自动插入,设备应用层不要主动发送.
枚举值
RTM_SYNCTIME 

回放: 时间同步帧, 用于告诉播放器下一帧发生时的的UTC时间.

在时间戳中断时(例如自动跳到下一个文件)发送

  • data2 = 下一帧发生时的UTC时间;
  • data1 = 时间的毫秒部分;
  • extra_len = 0; SDK 提供辅助宏 TciSendPbSyncFrame() 来发送这个帧
RTM_LENS_SWITCH 

实时流: 多目摄像机在变焦过程中发生镜头切换,在切换完成后、新镜头的第一个I帧前发送此标志

  • data1 = 视频通道号;
  • data2 = 码流编号;
  • extra_len = 0;


使用辅助宏 TciSendLiveMsg_LensSwitch() (或旧的 TciSendLensSwitchFlag())发送

RTM_SYNCTIME_RESPONSE_TO_USER 

回放: 同 RTM_SYNCTIME, 但在响应 TCI_CMD_RECORD_PLAYCONTROL 命令发生跳转的第一帧前发送

  • data1 = 0;
  • data2 = 下一帧发生时的UTC时间;
  • extra_len = 0;
RTM_REACH_PSP 

实时: 到达预置位.

响应APP调用预置位命令, 在转到预置位置时在实时流中发送.用于通知APP更新预置位图片。
当App端没有预置位缩略图时(分享、换手机、第三方设置了预置位等),依赖此特性自动更新。

  • data1: 视频通道号(或摄像头索引)
  • data2: 预置位编号(>0)
  • extra_len: 0
    使用辅助宏 TciSendLiveMsg_ReachPsp() 来发送这个消息
RTM_TIME_LAPSED 

回放: 缩时录像回放启停标志.

在sd卡回放时进入和退出缩时录像发送此标志。

  • data1: 1:缩时录像回放开始; 0:缩时录像回放结束
  • data2: 0 或 倍速
  • extra_len: 0
    使用辅助宏 TciSendPbTimelapseFlag() 发送本消息
RTM_UPDATE_CALL_STATE 

呼叫结束.

呼叫事件在设备端超时,或者接听者挂断,向所有(别的)连接发送此通知.
内部事件。目前在实时流里发送

RTM_GOINGTO_SLEEP 

实时或命令: 设备休眠通知, APP收到命令后要退出实时视频

  • data1: 0
  • data2: 0
  • extra_len: 0
RTM_END_OF_EVENT 

回放: 事件结束标志 事件(单文件)(参见 TCIC_RECORD_PLAY_START)回放模式下,当事件(文件)播放结束时发送此标志。 支持单文件模式时必需发送

RTM_CANCEL_CALL 

命令: 取消呼叫小程序.

这个是发给转发服务器的内部消息

RTM_USER 255 

用户自定义的消息

在文件 TgCloudConst.h136 行定义.

◆ TCMEDIA

enum TCMEDIA

媒体类型枚举常数

枚举值
TCMEDIA_INVALID 

无效类型

TCMEDIA_VIDEO_H264 

H.264 "h264"

TCMEDIA_AUDIO_G711A 

G.711A "g711a" "alaw"

TCMEDIA_AUDIO_ALAW TCMEDIA_AUDIO_G711A 

G.711A "g711a" "alaw"

TCMEDIA_VIDEO_IJPG 10 

Private Inter-frame jpeg codec

TCMEDIA_VIDEO_MPEG 11 

Mpeg "mpeg"

TCMEDIA_VIDEO_JPEG 12 

jpeg "jpeg"

TCMEDIA_VIDEO_MJPEG TCMEDIA_VIDEO_JPEG 

Mjpeg "jpeg"

TCMEDIA_VIDEO_H265 13 

H.265 "h265"

TCMEDIA_AUDIO_ULAW 51 

G.711U "g711u" "ulaw"

TCMEDIA_AUDIO_G711U TCMEDIA_AUDIO_ULAW 

G.711U

TCMEDIA_AUDIO_PCM 52 

Raw PCM "pcm"

TCMEDIA_AUDIO_ADPCM 53 

ADPCM "adpcm"

TCMEDIA_AUDIO_ADPCM_IMA TCMEDIA_AUDIO_ADPCM 

ADPCM "adpcm"

TCMEDIA_AUDIO_ADPCM_DVI4 54 

DVI4 "adpcm-dvi4"

TCMEDIA_AUDIO_G726_16 55 

G.726-16

TCMEDIA_AUDIO_G726_24 56 

G.726-24

TCMEDIA_AUDIO_G726_32 57 

G.726-32

TCMEDIA_AUDIO_G726_40 58 

G.726-40

TCMEDIA_AUDIO_AAC 59 

AAC "aac"

TCMEDIA_AUDIO_MP3 60 

MP3 "mp3"

TCMEDIA_AUDIO_AMR 61 

AMR "amr"

在文件 ec_const.h25 行定义.

◆ ENUM_AUDIO_SAMPLERATE

音频采样频率常数

枚举值
AUDIO_SAMPLE_8K 0x00 

8000

AUDIO_SAMPLE_11K 0x01 

11000

AUDIO_SAMPLE_16K 0x02 

16000

AUDIO_SAMPLE_22K 0x03 

22000

AUDIO_SAMPLE_24K 0x04 

24000

AUDIO_SAMPLE_32K 0x05 

32000

AUDIO_SAMPLE_44K 0x06 

44000

AUDIO_SAMPLE_48K 0x07 

48000

在文件 ec_const.h88 行定义.

◆ ENUM_AUDIO_DATABITS

枚举值
AUDIO_DATABITS_X 

16 bits. 为了兼容,0也表示16位采样。8位采样用别的方式表示

AUDIO_DATABITS_16 

16 bits

在文件 ec_const.h100 行定义.

◆ ENUM_AUDIO_CHANNEL

音频采样位宽常数

音频通道数

枚举值
AUDIO_CHANNEL_MONO 

单声道

AUDIO_CHANNEL_STERO 

双声道

在文件 ec_const.h107 行定义.

◆ ECEVENT

enum ECEVENT

上报事件类型.

事件可能需要携带额外参数。参数通过 EVENTPARAM::evt_data 传递,内容与具体事件相关

枚举值
ECEVENT_NONE 

[] none

ECEVENT_MOTION_DETECTED  

[motion] is detected (=1)

ECEVENT_HUMAN_BODY  

[body] human body is detected (=2)

ECEVENT_SOUND  

[sound] (=3)

ECEVENT_PIR  

[pir](=4)

ECEVENT_SMOKE  

[smoke] (=5)

ECEVENT_TEMPERATURE_L  

[tempL] temperature low(=6). 参数: MKEVTDATA_Temperatur()

ECEVENT_TEMPERATURE_H  

[tempH] temperature high(=7). 参数: MKEVTDATA_Temperatur()

ECEVENT_HUMIDITY_L  

[humidL] humidity low(=8). 参数: MKEVTDATA_Humidity()

ECEVENT_HUMIDITY_H  

[humidH] humidity high(=9). 参数: MKEVTDATA_Humidity()

ECEVENT_GENERIC_SENSOR  

[generic] 通用传感器类消息 (=10)

ECEVENT_DR_BEGIN  

行车记录仪事件范围开始(=11)

ECEVENT_G_SENSOR ECEVENT_DR_BEGIN 

[g-sensor] G-Sensor(碰撞事件)(=11). 参数: NULL or EVTDATA_SERIOUS_COLLISION

ECEVENT_COLLISION ECEVENT_G_SENSOR 

= ECEVENT_G_SENSOR(=11)

ECEVENT_SETOFF  

[set-off] set off car (=12)

ECEVENT_PARK  

[park] car parked(=13)

ECEVENT_SPEED_UP  

[speed-up] speed burstly up(=14)

ECEVENT_SPEED_DOWN  

[speed-down] speed burstly down(=15)

ECEVENT_DR_END ECEVENT_SPEED_DOWN 

行车记录仪事件范围结束(=15)

ECEVENT_CALL  

[call] (=16)

ECEVENT_DOORBELL ECEVENT_CALL 

保留旧的命名 = ECEVENT_CALL

ECEVENT_PASSBY  

[passby] 有人路过(=17)

ECEVENT_STAY  

[stay] 有人停留(=18)

ECEVENT_LOCK  

[lock] 门锁消息(大类)(=19). 细分消息在data部分

ECEVENT_CRY  

[cry] 检测到哭声(=20)

ECEVENT_ENTER  

[enter] 进入区域(=21)

ECEVENT_SITPOSE  

[bad_posture] sitting pose. 坐姿检测.(=22)

ECEVENT_LEAVE  

[leave] 离开区域 "leave". 由sdk生成?(=23)

ECEVENT_TUMBLE  

[tumble] 摔倒(=24)

ECEVENT_SNAPSHOT  

[snapshot] 手动抓拍(=25)

ECEVENT_CALL2  

[call.2]呼叫按键2(=26)

ECEVENT_USER_DEFINED 255 

自定义事件。使用方式见文档 EventSet, Cap-AI

在文件 ec_const.h118 行定义.

◆ ECALLSTATE

enum ECALLSTATE

Doorbell call state

枚举值
CALLSTATE_MISSED 

未接. 门铃呼叫由sdk内部定时. wxvoip呼叫代理会通过 TCI_CMD_ANSWERTOCALL 通知设备

CALLSTATE_ANSWERED 

已接。TCI_CMD_ANSWERTOCALL

CALLSTATE_REJECTED 

拒接。TCI_CMD_ANSWERTOCALL

CALLSTATE_CANCELLED 

设备端取消呼叫(上报 ECEVENT_CALL 事件 status=0)

CALLSTATE_HANGUP 

用户结束通话挂断接听. sdk在连接断开时也会产生。TCI_CMD_ANSWERTOCALL

CALLSTATE_BUSY 

用户占线(呼叫微信小程序用户时)

在文件 ec_const.h172 行定义.

◆ ECSERVICETYPE

云服务类型

枚举值
ECGS_TYPE_STORAGE 

云存储服务

ECGS_TYPE_AI 

AI服务

ECGS_TYPE_WXVOIP 

微信 VoIP

在文件 ec_const.h186 行定义.

◆ ECSVCTYPE

enum ECSVCTYPE

云服务子类型

枚举值
EC_SVC_EVENT 

事件录像

EC_SVC_CONTINUOUS  

全天录像

EC_SVC_FOR_AI  

仅为ai服务提供短录像,其它事件不录像

EC_SVC_IMAGE_N  

保存N张图片

在文件 ec_const.h193 行定义.

◆ ECG4STATE

enum ECG4STATE

4G状态

枚举值
G4STATE_IDLE 

communicate by lan

G4STATE_WORKING 

communicate by 4g

G4STATE_FAILURE 

4g module has failure

在文件 ec_const.h215 行定义.

◆ ECBUFFERHINT

云上传文件队列长度.

  • 队列长度大于0时,SDK内部生成的云录像会被放到上传队列依次上传。
    正常情况下,在下一个文件生成并投入队列前,当前文件已经上传完成并从队列中移出.
    但当网络有问题时,则正在上传或待上传的文件仍在队列中,队列满时,新的文件不能
    再投入队列中。
    如果设了后存储,当队列满或上传失败,文件会写到后备空间, 然后择机重传, 否则丢弃。
  • 队列长度为0时,文件直接写到后备空间。
  • 较大的队列长度在网络不好、没有后备存储时对改善事件云录像丢包有利. 但应用要保证
    系统有足够的内存可用 – 每个文件长5", 应用按最大可能的码流来估算用于上传队列的
    内存空间
枚举值
BUFFERHINT_NONE 

无缓冲. 数据先写卡再从卡上传, 仅用于行车记录仪的报警录像

BUFFERHINT_SMALLEST BUFFERHINT_NONE 

BUFFERHINT_NONE 的旧名

BUFFERHINT_1FILE 

队列长度为1.

BUFFERHINT_SMALL BUFFERHINT_1FILE 

BUFFERHINT_1BUFFER 的旧名

BUFFERHINT_2FILES 

队列长度为2

BUFFERHINT_DEFAULT BUFFERHINT_2FILES 

默认队列长度为2

BUFFERHINT_3FILES 

队列长度3

BUFFERHINT_4FILES 

队列长度4

BUFFERHINT_5FILES 

队列长度5

BUFFERHINT_6FILES 

队列长度6

在文件 ec_const.h232 行定义.