189 lines
6.1 KiB
C
Executable File
189 lines
6.1 KiB
C
Executable File
//
|
|
// GWP2PPlayerDefine.h
|
|
// GWP2P
|
|
//
|
|
// Created by WangShunXing on 2019/3/5.
|
|
// Copyright © 2019 apple. All rights reserved.
|
|
//
|
|
|
|
#ifndef GWP2PPlayerDefine_h
|
|
#define GWP2PPlayerDefine_h
|
|
|
|
/**
|
|
* 呼叫设备回调的参数字典的key常量声明
|
|
*/
|
|
extern NSString * const kP2PCallingIsSameDomainKey; //与对方是否在同个局域网
|
|
extern NSString * const kP2PCallAcceptIsVideo960PKey; //对方视频是否960P
|
|
extern NSString * const kP2PCallAcceptIsVideoWidescreenKey; //对方视频是否宽屏(16:9)
|
|
extern NSString * const kP2PCallAcceptVideoScaleKey; //视频画面边缘切边比例,NSNumber(float),范围0~1
|
|
extern NSString * const kP2PCallAcceptVideoCenterKey; //视频画面中心点, NSValue(CGPoint),范围(0,0)~(1,1)
|
|
|
|
typedef NS_ENUM(NSUInteger, GWP2PCallWay) {//呼叫方式
|
|
GWP2PCallWayInitiative = 0, //主动呼叫设备
|
|
GWP2PCallWayPassive, //被动呼叫,指NPC设备呼叫APP(通过用户ID)
|
|
};
|
|
|
|
typedef NS_ENUM(NSUInteger, GWP2PCallType) {//呼叫类型(主动呼叫设备时)
|
|
GWP2PCallTypeMonitor = 0, //监控
|
|
GWP2PCallTypeVideo, //视频通话(NPC设备)
|
|
GWP2PCallTypePlayback, //回放
|
|
};
|
|
|
|
typedef NS_ENUM(NSUInteger, GWP2PCallStatus) { //呼叫状态
|
|
GWP2PCallStatusNone = 0, //默认
|
|
GWP2PCallStatusCalling, //呼叫中
|
|
GWP2PCallStatusRejected, //呼叫被对方拒绝
|
|
GWP2PCallStatusAccepted, //呼叫被对方接受
|
|
GWP2PCallStatusReady, //连接准备就绪
|
|
};
|
|
|
|
typedef NS_ENUM(NSUInteger, GWP2PPlaybackState) { //回放状态
|
|
GWP2PPlaybackStateNone, //默认
|
|
GWP2PPlaybackStatePause, //暂停
|
|
GWP2PPlaybackStatePlaying, //正常播放中
|
|
GWP2PPlaybackStateFastForward, //快进中
|
|
GWP2PPlaybackStateStop //停止
|
|
};
|
|
|
|
typedef NS_ENUM(NSUInteger, GWPlaybackSpeed) { //回放倍速
|
|
GWPlaybackSpeedNormal,
|
|
GWPlaybackSpeedFastForward
|
|
};
|
|
|
|
|
|
/**
|
|
呼叫失败的错误枚举
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, GWP2PCallError) {
|
|
GWP2PCallErrorNone = 0, //0无原因
|
|
GWP2PCallErrorDesidNotEnable, //1对方的ID 被禁用
|
|
GWP2PCallErrorDesidOverDate, //2对方的ID 过期了
|
|
GWP2PCallErrorDesidNotAcitve, //3对方的ID 尚未激活
|
|
GWP2PCallErrorDesidOffline, //4对方离线
|
|
GWP2PCallErrorDesidBusy, //5对方忙线中
|
|
GWP2PCallErrorDesidPowerDown, //6对方已关机
|
|
GWP2PCallErrorNoHelper, //7没有找到协助人
|
|
GWP2PCallErrorHangUp, //8对方已经挂断
|
|
GWP2PCallErrorTimeout, //9连接超时
|
|
GWP2PCallErrorInterError, //10内部错误
|
|
GWP2PCallErrorRingTimeout, //11无人接听
|
|
GWP2PCallErrorPwdWrong, //12密码错误(在远程监控时用到密码,在视频通话是不需要)
|
|
GWP2PCallErrorConnFail,
|
|
GWP2PCallErrorNotSupport,
|
|
GWP2PCallErrorNotPermissions, //15无监控权限
|
|
|
|
};
|
|
|
|
/**
|
|
CallErrorCode 呼叫失败(连接超时)还会返回具体错误的16进制errorCode
|
|
由服务器定义,更多可在http://gwellserver2:8008/进行查询
|
|
*/
|
|
//0x2010200A UDP转发服务器握手失败
|
|
//0x20102009 连接tcp转发服务器成功,等待配对失败
|
|
//0x20102008 连接tcp转发服务器失败
|
|
//0x20102007 申请多路径传输,握手超时
|
|
//0x20102006 申请多路径传输超时
|
|
//0x20102005 局域网点对点连接失败
|
|
//0x20102004 发出呼叫,等待目标ID的地址信息超时
|
|
//0x20102003 传输数据中出现传输超时
|
|
//0x20102002 连接状态准备好,尝试传输数据超时
|
|
|
|
/**
|
|
全景模式
|
|
|
|
- PM_NONE: 黑屏,切换此模式无效
|
|
- PM_HALF_SPHERE: 半球
|
|
- PM_CYLINDER: 圆柱
|
|
- PM_SCROLL: 画卷
|
|
- PM_FOUR_SCREEN: 四画面
|
|
- PM_MIX: 混合
|
|
- PM_WIDE_ANGLE: 广角
|
|
- PM_QUAD: 四边形,适用于普通监控
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, PanoMode) {
|
|
PM_NONE,
|
|
PM_HALF_SPHERE,
|
|
PM_CYLINDER,
|
|
PM_SCROLL,
|
|
PM_FOUR_SCREEN,
|
|
PM_MIX,
|
|
PM_WIDE_ANGLE,
|
|
PM_QUAD
|
|
};
|
|
|
|
/**
|
|
录制过程中的事件
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, MP4RecordEvent) {
|
|
MP4RecordEventStart, /**< 等到视频流关键帧,开始录像 */
|
|
MP4RecordEventStop, /**< 停止录像 */
|
|
MP4RecordEventRatioChanged, /**< 切换了视频分辨率,停止录像 */
|
|
};
|
|
|
|
/**
|
|
定义录制过程中的事件回调代码块
|
|
*/
|
|
typedef void(^MP4RecordEventHandler)(MP4RecordEvent stopEvent);
|
|
|
|
/**
|
|
控制镜头转向
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, GWP2PPTZDirection) {
|
|
GWP2PPTZDirectionLeft = 0, //左
|
|
GWP2PPTZDirectionRight, //右
|
|
GWP2PPTZDirectionUp, //上
|
|
GWP2PPTZDirectionDown, //下
|
|
};
|
|
|
|
|
|
/**
|
|
视频清晰度
|
|
*/
|
|
typedef NS_ENUM(NSInteger, GWP2PPTZDefinition) {
|
|
GWP2PPTZDefinitionLD = 0, //流畅,NPC:320*240 IPC:320*180
|
|
GWP2PPTZDefinitionSD, //标清,NPC:640*480 IPC:640*360
|
|
GWP2PPTZDefinitionHD, //高清,NPC:None IPC:1280*720
|
|
};
|
|
|
|
|
|
/**
|
|
播放控制回调
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, GWP2PPlaybackControl) {
|
|
GWP2PPlaybackControlPlay, //播放
|
|
GWP2PPlaybackControlPause, //暂停
|
|
GWP2PPlaybackControlStop, //停止
|
|
GWP2PPlaybackControlFileEnd, //文件读取完毕,但不等于播放完毕
|
|
GWP2PPlaybackControlFastForward, //快进
|
|
GWP2PPlaybackControlFastForwardCancel, //取消快进
|
|
GWP2PPlaybackControlNextFile, //切换文件播放
|
|
GWP2PPlaybackControlSeekTime, //指定时间播放
|
|
};
|
|
|
|
|
|
/**
|
|
汇讯视通控制镜头
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, GWP2PHXVisonDirection) {
|
|
GWP2PHXVisonDirectionLeft = 0, //左,保持移动
|
|
GWP2PHXVisonDirectionRight, //右,保持移动
|
|
GWP2PHXVisonDirectionUp, //上,保持移动
|
|
GWP2PHXVisonDirectionDown, //下,保持移动
|
|
GWP2PHXVisonDirectionZoomOut, //缩小
|
|
GWP2PHXVisonDirectionZoomIn, //放大
|
|
GWP2PHXVisonDirectionStop, //停止,停止移动
|
|
};
|
|
|
|
|
|
/**
|
|
汇讯视通3D手势
|
|
*/
|
|
typedef NS_ENUM(NSUInteger, GWP2PHXVison3DGestureZoomType)
|
|
{
|
|
GWP2PHXVison3DGestureZoomTele = 0, //3D放大
|
|
GWP2PHXVison3DGestureZoomWide, //3D缩小
|
|
GWP2PHXVison3DGestureZoomLocate, //3D定位移动
|
|
};
|
|
|
|
#endif /* GWP2PPlayerDefine_h */
|