195 lines
5.4 KiB
Objective-C
Executable File
195 lines
5.4 KiB
Objective-C
Executable File
//
|
|
/** @file GWP2PVideoPlayer.h @brief 监控和视频通话的播放器 */
|
|
// P2PSDK
|
|
//
|
|
// Created by zengyuying on 17/4/7.
|
|
// Copyright © 2017年 gwell. All rights reserved.
|
|
//
|
|
|
|
#import "GWP2PPlayer.h"
|
|
#import "GWP2PPlayerDefine.h"
|
|
#import "GWP2PDevice.h"
|
|
|
|
@class GWP2PVideoPlayer;
|
|
|
|
/**
|
|
NPC设备主动呼叫的通知
|
|
参数有设备ID和是否在同个局域网
|
|
userInfo:@{@"deviceId":deviceId,kP2PCallingIsSameDomainKey:@(BOOL)}
|
|
*/
|
|
extern NSString * const kGWP2PDeviceIsCallingNotification;
|
|
|
|
/**
|
|
NPC设备主动拒绝的通知
|
|
|
|
*/
|
|
extern NSString * const kGWP2PDeviceIsRejectNotification;
|
|
|
|
/**
|
|
@brief GWP2PVideoPlayerProtocol协议包含监控时的设备状态信息的回调,按需要选择性实现
|
|
*/
|
|
@protocol GWP2PVideoPlayerProtocol <GWP2PPlayerProtocol>
|
|
|
|
@optional
|
|
|
|
/**
|
|
观看人数变化回调
|
|
触发场景:
|
|
1.呼叫设备后开始监控时
|
|
2.观看人数变化时(其他监控者加入或者断开)
|
|
3.高清-标清,高清-流畅,两种情况的分辨率互相切换时(标清-流畅切换不触发)
|
|
|
|
@param currentNumber 当前观看人数
|
|
*/
|
|
- (void)p2pVideoPlayer:(GWP2PVideoPlayer *)player numberOfAudiencesChange:(NSUInteger)currentNumber;
|
|
|
|
/**
|
|
监控网速发生改变,每秒回调一次
|
|
|
|
@param player 播放器
|
|
@param speed 网速
|
|
*/
|
|
- (void)p2pVideoPlayer:(GWP2PVideoPlayer *)player networkSpeedChanged:(NSInteger)speed;
|
|
|
|
/**
|
|
远程录像(SD卡录像)状态发送改变
|
|
|
|
@param parameters 参数 @"isRemoteRecording":@(BOOL),是否正在录像
|
|
@"hasSDCard":@(BOOL),是否有SD卡
|
|
@"isRecordFalse":@(BOOL),是否录制失败,可能SD卡损坏
|
|
*/
|
|
- (void)p2pVideoPlayer:(GWP2PVideoPlayer *)player remoteSDCardRecordStateChange:(NSDictionary *)parameters;
|
|
|
|
/**
|
|
布防状态发生改变
|
|
|
|
@param isDefenceOn 改变后的布防状态. YES:布防状态,NO:撤防状态
|
|
*/
|
|
- (void)p2pVideoPlayer:(GWP2PVideoPlayer *)player defenceStateChange:(BOOL)isDefenceOn;
|
|
|
|
|
|
@end
|
|
|
|
|
|
/**
|
|
@brief 监控和视频通话的播放器,继承自GWP2PPlayer
|
|
*/
|
|
@interface GWP2PVideoPlayer : GWP2PPlayer
|
|
|
|
/** 代理 */
|
|
@property (nonatomic, weak) id <GWP2PVideoPlayerProtocol> delegate;
|
|
|
|
/** 手势操作水平翻转 */
|
|
@property (nonatomic, assign) BOOL isFlipHorizontal;
|
|
|
|
/** 手势操作垂直翻转 */
|
|
@property (nonatomic, assign) BOOL isFlipVertical;
|
|
|
|
|
|
/**
|
|
呼叫一个设备,进行监控
|
|
|
|
@param deviceId 设备ID
|
|
@param password 设备密码
|
|
@param definition 默认清晰度
|
|
@param callingBlock 正在呼叫回调,详见block定义注释
|
|
@param acceptBlock 接收呼叫回调,详见block定义注释
|
|
@param rejectBlock 拒绝连接回调,详见block定义注释
|
|
@param readyBlock 连接就绪回调,详见block定义注释
|
|
*/
|
|
- (void)p2pCallDeviceWithDeviceId:(NSString *)deviceId
|
|
password:(NSString *)password
|
|
definition:(GWP2PPTZDefinition)definition
|
|
calling:(P2PCallingBlock)callingBlock
|
|
accept:(P2PAcceptBlock)acceptBlock
|
|
reject:(P2PRejectBlock)rejectBlock
|
|
ready:(P2PReadyBlock)readyBlock
|
|
allowLAN:(BOOL)allowLAN;
|
|
|
|
/**
|
|
呼叫一个NPC设备,进行视频对讲,目前只有NPC一种设备存在对讲视频对讲功能,所以不需要设备类型等参数
|
|
|
|
@param deviceId 设备ID
|
|
@param password 设备密码
|
|
@param callingBlock 正在呼叫回调,详见block定义注释
|
|
@param acceptBlock 接收呼叫回调,详见block定义注释
|
|
@param rejectBlock 拒绝连接回调,详见block定义注释
|
|
@param readyBlock 连接就绪回调,详见block定义注释
|
|
*/
|
|
- (void)p2pCallNPCDeviceWithDeviceId:(NSString *)deviceId
|
|
password:(NSString *)password
|
|
calling:(P2PCallingBlock)callingBlock
|
|
accept:(P2PAcceptBlock)acceptBlock
|
|
reject:(P2PRejectBlock)rejectBlock
|
|
ready:(P2PReadyBlock)readyBlock;
|
|
|
|
|
|
/**
|
|
接受当前的设备呼叫请求
|
|
|
|
@param acceptBlock 接收呼叫回调,详见block定义注释
|
|
@param rejectBlock 拒绝连接回调,详见block定义注释
|
|
@param readyBlock 连接就绪回调,详见block定义注释
|
|
*/
|
|
- (void)p2pAcceptCallingWithaccept:(P2PAcceptBlock)acceptBlock
|
|
reject:(P2PRejectBlock)rejectBlock
|
|
ready:(P2PReadyBlock)readyBlock;
|
|
|
|
|
|
/**
|
|
讲话开关。开启时向设备发送麦克风音频,默认关闭。
|
|
|
|
@param enable YES:开启,NO:关闭
|
|
*/
|
|
- (void)p2pEnableSpeak:(BOOL)enable;
|
|
|
|
/**
|
|
控制摇头机镜头转向
|
|
|
|
@param direction 转动方向枚举
|
|
*/
|
|
- (void)p2pTurnDirection:(GWP2PPTZDirection)direction;
|
|
|
|
/**
|
|
设置视频清晰度
|
|
|
|
@param definition 清晰度枚举
|
|
*/
|
|
- (void)p2pSetDefinition:(GWP2PPTZDefinition)definition;
|
|
|
|
/**
|
|
控制汇讯视通镜头转向
|
|
|
|
@param direction 镜头转动方向
|
|
*/
|
|
- (void)p2pHXVsionTurnDirection:(GWP2PHXVisonDirection)direction;
|
|
|
|
/**
|
|
汇讯视通3D手势
|
|
|
|
@param zoomType 3D手势类型
|
|
@param point 手势坐标
|
|
@param size 手势大小,当定位移动时,宽高必须传0
|
|
*/
|
|
- (void)p2pHXVsionOperate3DGesture:(GWP2PHXVison3DGestureZoomType)zoomType point:(CGPoint)point size:(CGSize)size;
|
|
|
|
/**
|
|
开始摄像
|
|
|
|
@param view 显示画面视图
|
|
*/
|
|
- (void)startCameraWithAddView:(UIView *)view;
|
|
|
|
/**
|
|
停止摄像
|
|
*/
|
|
- (void)stopCamera;
|
|
|
|
/**
|
|
切换摄像镜头
|
|
*/
|
|
- (void)switchCamera;
|
|
|
|
|
|
@end
|