diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioCustomProcessDelegate.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioCustomProcessDelegate.h deleted file mode 100644 index 9155c38c..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioCustomProcessDelegate.h +++ /dev/null @@ -1,38 +0,0 @@ -// -// TXAudioCustomProcessDelegate.h -// TXLiteAVSDK -// -// Created by realingzhou on 2018/1/15. -// Copyright © 2018年 Tencent. All rights reserved. -// - -#ifndef TXAudioCustomProcessDelegate_h -#define TXAudioCustomProcessDelegate_h -#import - -@protocol TXAudioCustomProcessDelegate - -/** - * 原始声音的回调 - * @param data pcm数据 - * @param timeStamp 时间戳 - * @param sampleRate 采样率 - * @param channels 声道数 - * @param withBgm 回调的数据是否包含bgm,当不开启回声消除时,回调的raw pcm会包含bgm - */ -@optional -- (void)onRecordRawPcmData:(NSData *)data timeStamp:(unsigned long long)timeStamp sampleRate:(int)sampleRate channels:(int)channels withBgm:(BOOL)withBgm; - -/** - * 经过特效处理的声音回调 - * @param data pcm数据 - * @param timeStamp 时间戳 - * @param sampleRate 采样率 - * @param channels 声道数 - */ -@optional -- (void)onRecordPcmData:(NSData *)data timeStamp:(unsigned long long)timeStamp sampleRate:(int)sampleRate channels:(int)channels; - -@end - -#endif /* TXAudioCustomProcessDelegate_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioRawDataDelegate.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioRawDataDelegate.h deleted file mode 100644 index 9d834fee..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXAudioRawDataDelegate.h +++ /dev/null @@ -1,38 +0,0 @@ -// -// TXAudioRawDataDelegate.h -// TXLiteAVSDK -// -// Created by realingzhou on 2018/2/24. -// Copyright © 2018年 Tencent. All rights reserved. -// - -#ifndef TXAudioRawDataDelegate_h -#define TXAudioRawDataDelegate_h - -@protocol TXAudioRawDataDelegate - -/** - * 音频播放信息回调 - * - * @param sampleRate 采样率 - * @param channels 声道数 - */ -@optional -- (void)onAudioInfoChanged:(int)sampleRate channels:(int)channels; - -/** - * 音频播放数据回调,数据格式 :PCM - * - * <!!!注意!!!> 该函数内不要做耗时操作<!!!注意!!!> - * 音频播放器会在播放数据的前一刻,调用此函数,同步回调将要播放的数据。因此在函数内部做耗时操作可能会影响播放 - * - * - * @param data pcm数据 - * @param timestamp 时间戳。注 :会有连续相同的时间戳回调出来,超过2048字节,时间戳才会变化。 - */ -@optional -- (void)onPcmDataAvailable:(NSData *)data pts:(unsigned long long)timestamp; - -@end - -#endif /* TXAudioRawDataDelegate_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXBitrateItem.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXBitrateItem.h deleted file mode 100755 index 0ae929ce..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXBitrateItem.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// TXBitrateItem.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/11/15. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#ifndef TXBitrateItem_h -#define TXBitrateItem_h - -/// HLS多码率信息 -@interface TXBitrateItem : NSObject -@property (nonatomic, assign) NSInteger index; ///< m3u8 文件中的序号 -@property (nonatomic, assign) NSInteger width; ///< 此流的视频宽度 -@property (nonatomic, assign) NSInteger height; ///< 此流的视频高度 -@property (nonatomic, assign) NSInteger bitrate; ///< 此流的视频码率 -@end -#endif /* TXBitrateItem_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXImageSprite.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXImageSprite.h deleted file mode 100644 index 3970df5e..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXImageSprite.h +++ /dev/null @@ -1,27 +0,0 @@ -// -// TXImageSprite.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2018/8/23. -// Copyright © 2018年 Tencent. All rights reserved. -// - -#import -#import - -/// 雪碧图解析工具 -@interface TXImageSprite : NSObject -/** - * 设置雪碧图地址 - * @param vttUrl VTT链接 - * @param images 雪碧图大图列表 - */ -- (void)setVTTUrl:(NSURL *)vttUrl imageUrls:(NSArray *)images; - -/** - * 获取缩略图 - * @param time 时间点,单位秒 - * @return 获取失败返回nil - */ -- (UIImage *)getThumbnail:(GLfloat)time; -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVCode.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVCode.h deleted file mode 100644 index 1ba051c7..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVCode.h +++ /dev/null @@ -1,315 +0,0 @@ -#ifndef __TXLITEAVCODE_H__ -#define __TXLITEAVCODE_H__ - -///////////////////////////////////////////////////////////////////////////////// -// -// (一)错误码(严重) -// -///////////////////////////////////////////////////////////////////////////////// - -typedef enum TXLiteAVError -{ - ERR_NULL = 0, ///< 无错误 - - ERR_CAMERA_START_FAIL = -1301, ///< 打开摄像头失败,例如在 Windows 或 Mac 设备,摄像头的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 - ERR_CAMERA_NOT_AUTHORIZED = -1314, ///< 摄像头设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 - ERR_CAMERA_SET_PARAM_FAIL = -1315, ///< 摄像头参数设置出错(参数不支持或其它) - ERR_CAMERA_OCCUPY = -1316, ///< 摄像头正在被占用中,可尝试打开其他摄像头 - ERR_MIC_START_FAIL = -1302, ///< 打开麦克风失败,例如在 Windows 或 Mac 设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 - ERR_MIC_NOT_AUTHORIZED = -1317, ///< 麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 - ERR_MIC_SET_PARAM_FAIL = -1318, ///< 麦克风设置参数失败 - ERR_MIC_OCCUPY = -1319, ///< 麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败 - ERR_MIC_STOP_FAIL = -1320, ///< 停止麦克风失败 - ERR_SPEAKER_START_FAIL = -1321, ///< 打开扬声器失败,例如在 Windows 或 Mac 设备,扬声器的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 - ERR_SPEAKER_SET_PARAM_FAIL = -1322, ///< 扬声器设置参数失败 - ERR_SPEAKER_STOP_FAIL = -1323, ///< 停止扬声器失败 - - ERR_VIDEO_ENCODE_FAIL = -1303, ///< 视频帧编码失败,例如 iOS 设备切换到其他应用时,硬编码器可能被系统释放,再切换回来时,硬编码器重启前,可能会抛出 - ERR_AUDIO_ENCODE_FAIL = -1304, ///< 音频帧编码失败,例如传入自定义音频数据,SDK 无法处理 - ERR_UNSUPPORTED_RESOLUTION = -1305, ///< 不支持的视频分辨率 - ERR_UNSUPPORTED_SAMPLERATE = -1306, ///< 不支持的音频采样率 - ERR_RTMP_PUSH_NET_DISCONNECT = -1307, ///< 直播,推流出现网络断开,且经过多次重试无法恢复 - ERR_SCREEN_CAPTURE_START_FAIL = -1308, ///< 开始录屏失败,如果在移动设备出现,可能是权限被用户拒绝了,如果在 Windows 或 Mac 系统的设备出现,请检查录屏接口的参数是否符合要求 - ERR_SCREEN_CAPTURE_UNSURPORT = -1309, ///< 录屏失败,在 Android 平台,需要5.0以上的系统 - ERR_RTMP_PUSH_INVALID_ADDRESS = -1313, ///< 直播,推流地址非法,例如不是 RTMP 协议的地址 - ERR_RTMP_PUSH_NET_ALLADDRESS_FAIL = -1324, ///< 直播,连接推流服务器失败(若支持智能选路,IP 全部失败) - ERR_RTMP_PUSH_NO_NETWORK = -1325, ///< 直播,网络不可用,请确认 WiFi、移动数据或者有线网络是否正常 - ERR_RTMP_PUSH_SERVER_REFUSE = -1326, ///< 直播,服务器拒绝连接请求,可能是该推流地址已经被占用,或者 TXSecret 校验失败,或者是过期了,或者是欠费了 - ERR_PIXEL_FORMAT_UNSUPPORTED = -1327, ///< 设置的 pixel format 不支持 - ERR_BUFFER_TYPE_UNSUPPORTED = -1328, ///< 设置的 buffer type 不支持 - - ERR_PLAY_LIVE_STREAM_NET_DISCONNECT = -2301, ///< 直播,网络断连,且经多次重连抢救无效,可以放弃治疗,更多重试请自行重启播放 - ERR_GET_RTMP_ACC_URL_FAIL = -2302, ///< 直播,获取加速拉流的地址失败 - ERR_FILE_NOT_FOUND = -2303, ///< 播放的文件不存在 - ERR_HEVC_DECODE_FAIL = -2304, ///< H265 解码失败 - ERR_VOD_DECRYPT_FAIL = -2305, ///< 点播,音视频流解密失败 - ERR_GET_VODFILE_MEDIAINFO_FAIL = -2306, ///< 点播,获取点播文件信息失败 - ERR_PLAY_LIVE_STREAM_SWITCH_FAIL = -2307, ///< 直播,切流失败(切流可以播放不同画面大小的视频) - ERR_PLAY_LIVE_STREAM_SERVER_REFUSE = -2308, ///< 直播,服务器拒绝连接请求 - ERR_RTMP_ACC_FETCH_STREAM_FAIL = -2309, ///< 直播,RTMPACC 低延时拉流失败,且经过多次重试无法恢复 - - ERR_ROOM_ENTER_FAIL = -3301, ///< 进入房间失败 [例如 token 过期等原因,server 错误码梳理中,待细化] - ERR_ROOM_HEARTBEAT_FAIL = -3302, ///< 心跳失败,客户端定时向服务器发送数据包,告诉服务器自己活着,这个错误通常是发包超时 - ERR_ROOM_REQUEST_IP_FAIL = -3303, ///< 拉取接口机服务器地址失败 - ERR_ROOM_CONNECT_FAIL = -3304, ///< 连接接口机服务器失败 - ERR_ROOM_REQUEST_AVSEAT_FAIL = -3305, ///< 请求视频位失败 - ERR_ROOM_REQUEST_TOKEN_HTTPS_TIMEOUT = -3306, ///< 请求 token https 超时,请检查网络是否正常,或网络防火墙是否放行 https 访问 official.opensso.tencent-cloud.com:443 - ERR_ROOM_REQUEST_IP_TIMEOUT = -3307, ///< 请求 IP 和 sig 超时,请检查网络是否正常,或网络防火墙是否放行 UDP 访问下列 IP 和域名 query.tencent-cloud.com:8000 162.14.23.140:8000 162.14.7.49:8000 - ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT = -3308, ///< 请求进房超时,请检查网络 - ERR_ROOM_REQUEST_VIDEO_FLAG_TIMEOUT = -3309, ///< 请求视频位超时 - ERR_ROOM_REQUEST_VIDEO_DATA_ROOM_TIMEOUT = -3310, ///< 请求视频数据超时 - ERR_ROOM_REQUEST_CHANGE_ABILITY_TIMEOUT = -3311, ///< 请求修改视频能力项超时 - ERR_ROOM_REQUEST_STATUS_REPORT_TIMEOUT = -3312, ///< 请求状态上报超时 - ERR_ROOM_REQUEST_CLOSE_VIDEO_TIMEOUT = -3313, ///< 请求关闭视频超时 - ERR_ROOM_REQUEST_SET_RECEIVE_TIMEOUT = -3314, ///< 请求接收视频项超时 - ERR_ROOM_REQUEST_TOKEN_INVALID_PARAMETER = -3315, ///< 请求 token 无效参数,请检查 TRTCParams.userSig 是否填写正确 - ERR_ENTER_ROOM_PARAM_NULL = -3316, ///< 进房参数为空,请检查 enterRoom:appScene: 接口调用是否传入有效的 param - ERR_SDK_APPID_INVALID = -3317, ///< 进房参数 sdkAppId 错误 - ERR_ROOM_ID_INVALID = -3318, ///< 进房参数 roomId 错误 - ERR_USER_ID_INVALID = -3319, ///< 进房参数 userID 不正确 - ERR_USER_SIG_INVALID = -3320, ///< 进房参数 userSig 不正确 - - ERR_PUBLISH_CDN_STREAM_REQUEST_TIME_OUT = -3321, ///< 旁路转推请求超时 - ERR_CLOUD_MIX_TRANSCODING_REQUEST_TIME_OUT = -3322, ///< 云端混流请求超时 - ERR_PUBLISH_CDN_STREAM_RESPON_ERROR = -3323, ///< 旁路转推回包异常 - ERR_CLOUD_MIX_TRANSCODING_RESPON_ERROR = -3324, ///< 云端混流回包异常 - ERR_ROOM_REQUEST_QUIT_ROOM_TIMEOUT = -3325, ///< 请求退房超时 - ERR_ROOM_REQUEST_CONN_ROOM_TIMEOUT = -3326, ///< 请求连麦超时 - ERR_ROOM_REQUEST_DISCONN_ROOM_TIMEOUT = -3327, ///< 请求退出连麦超时 - ERR_ROOM_REQUEST_CONN_ROOM_INVALID_PARAM = -3328, ///< 无效参数 - ERR_ROOM_REQUEST_AES_TOKEN_RETURN_ERROR = -3329, ///< 请求 AES TOKEN 时,server 返回的内容是空的 - ERR_CONNECT_OTHER_ROOM_AS_AUDIENCE = -3330, ///< 当前是观众角色,不能请求或断开跨房连麦 - ERR_ACCIP_LIST_EMPTY = -3331, ///< 请求接口机 IP 返回的列表为空的 - - // Info 服务器(查询接口机 IP), 服务器错误码,数值范围[-100000, -110000] - - ERR_SERVER_INFO_UNPACKING_ERROR = -100000, ///< server 解包错误,可能请求数据被篡改 - ERR_SERVER_INFO_TOKEN_ERROR = -100001, ///< TOKEN 错误 - ERR_SERVER_INFO_ALLOCATE_ACCESS_FAILED = -100002, ///< 分配接口机错误 - ERR_SERVER_INFO_GENERATE_SIGN_FAILED = -100003, ///< 生成签名错误 - ERR_SERVER_INFO_TOKEN_TIMEOUT = -100004, ///< https token 超时 - ERR_SERVER_INFO_INVALID_COMMAND = -100005, ///< 无效的命令字 - ERR_SERVER_INFO_PRIVILEGE_FLAG_ERROR = -100006, ///< 权限位校验失败 - ERR_SERVER_INFO_GENERATE_KEN_ERROR = -100007, ///< https 请求时,生成加密 key 错误 - ERR_SERVER_INFO_GENERATE_TOKEN_ERROR = -100008, ///< https 请求时,生成 token 错误 - ERR_SERVER_INFO_DATABASE = -100009, ///< 数据库查询失败(房间相关存储信息) - ERR_SERVER_INFO_BAD_ROOMID = -100010, ///< 房间号错误 - ERR_SERVER_INFO_BAD_SCENE_OR_ROLE = -100011, ///< 场景或角色错误 - ERR_SERVER_INFO_ROOMID_EXCHANGE_FAILED = -100012, ///< 房间号转换出错 - ERR_SERVER_INFO_SERVICE_SUSPENDED = -100013, ///< 腾讯云账号欠费 - ERR_SERVER_INFO_STRGROUP_HAS_INVALID_CHARS = -100014, ///< 房间号非法 - ERR_SERVER_INFO_LACK_SDKAPPID = -100015, ///< 非法SDKAppid - ERR_SERVER_INFO_INVALID = -100016, ///< 无效请求, 旧版 0x1 要求带 Token; ECDH 要求带 ECDH Publich Key; 两个都没有就按报错 - ERR_SERVER_INFO_ECDH_GET_KEY = -100017, ///< 生成公钥失败 - ERR_SERVER_INFO_ECDH_GET_TINYID = -100018, ///< 获取tinyid失败 - - // Access 接口机 - - ERR_SERVER_ACC_TOKEN_TIMEOUT = -101000, ///< token 过期 - ERR_SERVER_ACC_SIGN_ERROR = -101001, ///< 签名错误 - ERR_SERVER_ACC_SIGN_TIMEOUT = -101002, ///< 签名超时 - ERR_SERVER_ACC_ROOM_NOT_EXIST = -101003, ///< 房间不存在 - ERR_SERVER_ACC_ROOMID = -101004, ///< 后台房间标识 roomId 错误 - ERR_SERVER_ACC_LOCATIONID = -101005, ///< 后台用户位置标识 locationId 错误 - - // center 服务器(信令和流控处理等任务) - - ERR_SERVER_CENTER_SYSTEM_ERROR = -102000, ///< 后台错误 - - ERR_SERVER_CENTER_INVALID_ROOMID = -102001, ///< 无效的房间 Id - ERR_SERVER_CENTER_CREATE_ROOM_FAILED = -102002, ///< 创建房间失败 - ERR_SERVER_CENTER_SIGN_ERROR = -102003, ///< 签名错误 - ERR_SERVER_CENTER_SIGN_TIMEOUT = -102004, ///< 签名过期 - ERR_SERVER_CENTER_ROOM_NOT_EXIST = -102005, ///< 房间不存在 - ERR_SERVER_CENTER_ADD_USER_FAILED = -102006, ///< 房间添加用户失败 - ERR_SERVER_CENTER_FIND_USER_FAILED = -102007, ///< 查找用户失败 - ERR_SERVER_CENTER_SWITCH_TERMINATION_FREQUENTLY = -102008, ///< 频繁切换终端 - ERR_SERVER_CENTER_LOCATION_NOT_EXIST = -102009, ///< locationid 错误 - ERR_SERVER_CENTER_NO_PRIVILEDGE_CREATE_ROOM = -102010, ///< 没有权限创建房间 - ERR_SERVER_CENTER_NO_PRIVILEDGE_ENTER_ROOM = -102011, ///< 没有权限进入房间 - ERR_SERVER_CENTER_INVALID_PARAMETER_SUB_VIDEO = -102012, ///< 辅路抢视频位、申请辅路请求类型参数错误 - ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_VIDEO = -102013, ///< 没有权限上视频 - ERR_SERVER_CENTER_ROUTE_TABLE_ERROR = -102014, ///< 没有空闲路由表 - ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_SUB_VIDEO = -102015, ///< 没有权限上行辅路 - ERR_SERVER_CENTER_ANOTHER_USER_PUSH_SUB_VIDEO = -102016, ///< 其他用户正在上行辅路 - ERR_SERVER_CENTER_NOT_PUSH_SUB_VIDEO = -102017, ///< 当前用户没有上行辅路 - ERR_SERVER_CENTER_USER_WAS_DELETED = -102018, ///< 用户被删除状态 - ERR_SERVER_CENTER_NO_PRIVILEDGE_REQUEST_VIDEO = -102019, ///< 没有权限请求视频 - - ERR_SERVER_CENTER_INVALID_PARAMETER = -102023, ///< 进房参数 bussInfo 错误 - ERR_SERVER_CENTER_I_FRAME_UNKNOW_TYPE = -102024, ///< 请求 I 帧未知 opType - ERR_SERVER_CENTER_I_FRAME_INVALID_PACKET = -102025, ///< 请求 I 帧包格式错误 - ERR_SERVER_CENTER_I_FRAME_DEST_USER_NOT_EXIST = -102026, ///< 请求 I 帧目标用户不存在 - ERR_SERVER_CENTER_I_FRAME_ROOM_TOO_BIG = -102027, ///< 请求 I 帧房间用户太多 - ERR_SERVER_CENTER_I_FRAME_RPS_INVALID_PARAMETER = -102028, ///< 请求 I 帧参数错误 - ERR_SERVER_CENTER_INVALID_ROOM_ID = -102029, ///< 房间号非法 - ERR_SERVER_CENTER_ROOM_ID_TOO_LONG = -102030, ///< 房间号超过限制 - //跨房间连麦 - ERR_SERVER_CENTER_CONN_ROOM_NOT_SUPPORT = -102031, ///< 不支持跨房间连麦 - ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_NUM = -102032, ///< 达到跨房间连麦上限 - ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_RETRY_TIMES = -102033, ///< 跨房间连麦重试次数耗尽 - ERR_SERVER_CENTER_CONN_ROOM_REQ_TIMEOUT = -102034, ///< 跨房间连麦请求超时 - ERR_SERVER_CENTER_CONN_ROOM_REQ = -102035, ///< 跨房间连麦请求格式错误 - ERR_SERVER_CENTER_CONN_ROOM_NO_SIG = -102036, ///< 跨房间连麦无签名 - ERR_SERVER_CENTER_CONN_ROOM_DECRYPT_SIG = -102037, ///< 跨房间连麦签名解密失败 - ERR_SERVER_CENTER_CONN_ROOM_NO_KEY = -102038, ///< 未找到跨房间连麦签名解密密钥 - ERR_SERVER_CENTER_CONN_ROOM_PARSE_SIG = -102039, ///< 跨房间连麦签名解析错误 - ERR_SERVER_CENTER_CONN_ROOM_INVALID_SIG_TIME = -102040, ///< 跨房间连麦签名时间戳错误 - ERR_SERVER_CENTER_CONN_ROOM_SIG_GROUPID = -102041, ///< 跨房间连麦签名不匹配 - ERR_SERVER_CENTER_CONN_ROOM_NOT_CONNED = -102042, ///< 本房间无连麦 - ERR_SERVER_CENTER_CONN_ROOM_USER_NOT_CONNED = -102043, ///< 本用户未发起连麦 - ERR_SERVER_CENTER_CONN_ROOM_FAILED = -102044, ///< 跨房间连麦失败 - ERR_SERVER_CENTER_CONN_ROOM_CANCEL_FAILED = -102045, ///< 取消跨房间连麦失败 - ERR_SERVER_CENTER_CONN_ROOM_CONNED_ROOM_NOT_EXIST = -102046, ///< 被连麦房间不存在 - ERR_SERVER_CENTER_CONN_ROOM_CONNED_REACH_MAX_ROOM = -102047, ///< 被连麦房间达到连麦上限 - ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_NOT_EXIST = -102048, ///< 被连麦用户不存在 - ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_DELETED = -102049, ///< 被连麦用户已被删除 - ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_FULL = -102050, ///< 被连麦用户达到资源上限 - ERR_SERVER_CENTER_CONN_ROOM_INVALID_SEQ = -102051, ///< 连麦请求序号错乱 - ERR_SERVER_CENTER_ROOM_FULL = -102052, ///< 房间满员 - ERR_SERVER_CENTER_DECODE_JSON_FAIL = -102053, ///< json串解析失败 - ERR_SERVER_CENTER_UNKNOWN_SUB_CMD = -102054, ///< 未定义命令字 - ERR_SERVER_CENTER_INVALID_ROLE = -102055, ///< 未定义角色 - ERR_SERVER_CENTER_REACH_PROXY_MAX = -102056, ///< 代理机超出限制 - - //add by sunlitwang begin - ERR_SERVER_CENTER_RECORDID_STORE = -102057, ///< 无法保存用户自定义recordId - ERR_SERVER_CENTER_PB_SERIALIZE = -102058, ///< Protobuf序列化错误 - // https://cloud.tencent.com/document/product/269/1671#.E5.B8.90.E5.8F.B7.E7.B3.BB.E7.BB.9F , 帐号系统, 主要是70000 - 79999之间. - // 在请求 token 过程中,出现账号错误,SSO 返回的错误码,原为正数,现将其转换为负数。 - - ERR_SERVER_SSO_SIG_EXPIRED = -70001, ///< sig 过期,请尝试重新生成。如果是刚生成,就过期,请检查有效期填写的是否过小,或者填的 0 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_1 = -70003, ///< sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_2 = -70004, ///< sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_3 = -70005, ///< sig 校验失败,可用工具自行验证生成的 sig 是否正确 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_4 = -70006, ///< sig 校验失败,可用工具自行验证生成的 sig 是否正确 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_5 = -70007, ///< sig 校验失败,可用工具自行验证生成的 sig 是否正确 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_6 = -70008, ///< sig 校验失败,可用工具自行验证生成的 sig 是否正确 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_7 = -70009, ///< 用业务公钥验证 sig 失败,请确认生成的 usersig 使用的私钥和 sdkAppId 是否对应 - ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_8 = -70010, ///< sig 校验失败,可用工具自行验证生成的 sig 是否正确 - ERR_SERVER_SSO_SIG_VERIFICATION_ID_NOT_MATCH = -70013, ///< sig 中 identifier 与请求时的 identifier 不匹配,请检查登录时填写的 identifier 与 sig 中的是否一致 - ERR_SERVER_SSO_APPID_NOT_MATCH = -70014, ///< sig 中 sdkAppId 与请求时的 sdkAppId 不匹配,请检查登录时填写的 sdkAppId 与 sig 中的是否一致 - ERR_SERVER_SSO_VERIFICATION_EXPIRED = -70017, ///< 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 - ERR_SERVER_SSO_VERIFICATION_FAILED = -70018, ///< 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 - - ERR_SERVER_SSO_APPID_NOT_FOUND = -70020, ///< sdkAppId 未找到,请确认是否已经在腾讯云上配置 - ERR_SERVER_SSO_ACCOUNT_IN_BLACKLIST = -70051, ///< 帐号已被拉入黑名单,请联系 TLS 帐号支持 QQ 3268519604 - ERR_SERVER_SSO_SIG_INVALID = -70052, ///< usersig 已经失效,请重新生成,再次尝试 - ERR_SERVER_SSO_LIMITED_BY_SECURITY = -70114, ///< 安全原因被限制 - ERR_SERVER_SSO_INVALID_LOGIN_STATUS = -70221, ///< 登录状态无效,请使用 usersig 重新鉴权 - ERR_SERVER_SSO_APPID_ERROR = -70252, ///< sdkAppId 填写错误 - ERR_SERVER_SSO_TICKET_VERIFICATION_FAILED = -70346, ///< 票据校验失败,请检查各项参数是否正确 - ERR_SERVER_SSO_TICKET_EXPIRED = -70347, ///< 票据因过期原因校验失败 - ERR_SERVER_SSO_ACCOUNT_EXCEED_PURCHASES = -70398, ///< 创建账号数量超过已购买预付费数量限制 - ERR_SERVER_SSO_INTERNAL_ERROR = -70500, ///< 服务器内部错误,请重试 -} TXLiteAVError; - -///////////////////////////////////////////////////////////////////////////////// -// -// (二)错误码(警告) -// -///////////////////////////////////////////////////////////////////////////////// - -typedef enum TXLiteAVWarning -{ - WARNING_NET_BUSY = 1101, ///< 网络状况不佳:上行带宽太小,上传数据受阻 - WARNING_RTMP_SERVER_RECONNECT = 1102, ///< 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) - WARNING_HW_ENCODER_START_FAIL = 1103, ///< 硬编码启动失败,采用软编码 - WARNING_VIDEO_ENCODER_SW_TO_HW = 1107, ///< 视频编码器从软编码自动切换到硬编码,一般是由于 CPU 使用率过高触发的 - WARNING_INSUFFICIENT_CAPTURE_FPS = 1108, ///< 摄像头采集帧率不足,部分自带美颜算法的 Android 手机上会出现 - WARNING_SW_ENCODER_START_FAIL = 1109, ///< 软编码启动失败 - WARNING_REDUCE_CAPTURE_RESOLUTION = 1110, ///< 摄像头采集分辨率被降低,以满足当前帧率和性能最优解。 - - WARNING_VIDEO_FRAME_DECODE_FAIL = 2101, ///< 当前视频帧解码失败 - WARNING_AUDIO_FRAME_DECODE_FAIL = 2102, ///< 当前音频帧解码失败 - WARNING_LIVE_STREAM_SERVER_RECONNECT = 2103, ///< 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) - WARNING_RECV_DATA_LAG = 2104, ///< 网络来包不稳:可能是下行带宽不足,或由于主播端出流不均匀 - WARNING_VIDEO_PLAY_LAG = 2105, ///< 当前视频播放出现卡顿(用户直观感受) - WARNING_HW_DECODER_START_FAIL = 2106, ///< 硬解启动失败,采用软解码 - WARNING_VIDEO_DECODER_HW_TO_SW = 2108, ///< 当前流硬解第一个 I 帧失败,SDK 自动切软解 - WARNING_SW_DECODER_START_FAIL = 2109, ///< 软解码器启动失败 - - WARNING_RTMP_DNS_FAIL = 3001, ///< 直播,DNS 解析失败 - WARNING_RTMP_SEVER_CONN_FAIL = 3002, ///< 直播,服务器连接失败 - WARNING_RTMP_SHAKE_FAIL = 3003, ///< 直播,与 RTMP 服务器握手失败 - WARNING_RTMP_SERVER_BREAK_CONNECT = 3004, ///< 直播,服务器主动断开 - WARNING_RTMP_READ_WRITE_FAIL = 3005, ///< 直播,RTMP 读/写失败,将会断开连接 - WARNING_RTMP_WRITE_FAIL = 3006, ///< 直播,RTMP 写失败(SDK 内部错误码,不会对外抛出) - WARNING_RTMP_READ_FAIL = 3007, ///< 直播,RTMP 读失败(SDK 内部错误码,不会对外抛出) - WARNING_RTMP_NO_DATA = 3008, ///< 直播,超过30s 没有数据发送,主动断开连接 - WARNING_PLAY_LIVE_STREAM_INFO_CONNECT_FAIL = 3009, ///< 直播,connect 服务器调用失败(SDK 内部错误码,不会对外抛出) - WARNING_NO_STEAM_SOURCE_FAIL = 3010, ///< 直播,连接失败,该流地址无视频(SDK 内部错误码,不会对外抛出) - - WARNING_ROOM_DISCONNECT = 5101, ///< 网络断开连接 - WARNING_ROOM_RECONNECT = 5102, ///< 网络断连,已启动自动重连 - WARNING_ROOM_NET_BUSY = 5103, ///< 网络状况不佳:上行带宽太小,上传数据受阻 - - WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE = 6001, ///< 当前是观众角色,忽略上行音视频数据 - - WARNING_AUDIO_RECORDING_WRITE_FAIL = 7001, ///< 音频录制写入文件失败 -} TXLiteAVWarning; - -///////////////////////////////////////////////////////////////////////////////// -// -// (三)事件列表 -// -///////////////////////////////////////////////////////////////////////////////// - -typedef enum TXLiteAVEvent -{ - EVT_RTMP_PUSH_CONNECT_SUCC = 1001, ///< 直播,已经连接 RTMP 推流服务器 - EVT_RTMP_PUSH_BEGIN = 1002, ///< 直播,已经与 RTMP 服务器握手完毕,开始推流 - EVT_CAMERA_START_SUCC = 1003, ///< 打开摄像头成功 - EVT_SCREEN_CAPTURE_SUCC = 1004, ///< 录屏启动成功 - EVT_UP_CHANGE_RESOLUTION = 1005, ///< 上行动态调整分辨率 - EVT_UP_CHANGE_BITRATE = 1006, ///< 码率动态调整 - EVT_FIRST_FRAME_AVAILABLE = 1007, ///< 首帧画面采集完成 - EVT_START_VIDEO_ENCODER = 1008, ///< 编码器启动成功 - EVT_SNAPSHOT_COMPLETE = 1022, ///< 一帧截图完成 - EVT_CAMERA_REMOVED = 1023, ///< 摄像头设备已被移出(Windows 和 Mac 版 SDK 使用) - EVT_CAMERA_AVAILABLE = 1024, ///< 摄像头设备重新可用(Windows 和 Mac 版 SDK 使用) - EVT_CAMERA_CLOSE = 1025, ///< 关闭摄像头完成(Windows 和 Mac 版 SDK 使用) - EVT_RTMP_PUSH_PUBLISH_START = 1026, ///< 直播,与 RTMP 服务器连接后,收到 NetStream.Publish.Start 消息,表明流发布成功(SDK 内部事件,不会对外抛出) - EVT_HW_ENCODER_START_SUCC = 1027, ///< 硬编码器启动成功 - EVT_SW_ENCODER_START_SUCC = 1028, ///< 软编码器启动成功 - - EVT_PLAY_LIVE_STREAM_CONNECT_SUCC = 2001, ///< 直播,已经连接 RTMP 拉流服务器 - EVT_PLAY_LIVE_STREAM_BEGIN = 2002, ///< 直播,已经与 RTMP 服务器握手完毕,开始拉流 - EVT_RENDER_FIRST_I_FRAME = 2003, ///< 渲染首个视频数据包(IDR) - EVT_VIDEO_PLAY_BEGIN = 2004, ///< 视频播放开始 - EVT_VIDEO_PLAY_PROGRESS = 2005, ///< 视频播放进度 - EVT_VIDEO_PLAY_END = 2006, ///< 视频播放结束 - EVT_VIDEO_PLAY_LOADING = 2007, ///< 视频播放 loading - EVT_START_VIDEO_DECODER = 2008, ///< 解码器启动 - EVT_DOWN_CHANGE_RESOLUTION = 2009, ///< 下行视频分辨率改变 - EVT_GET_VODFILE_MEDIAINFO_SUCC = 2010, ///< 点播,获取点播文件信息成功 - EVT_VIDEO_CHANGE_ROTATION = 2011, ///< 视频旋转角度发生改变 - EVT_PLAY_GET_MESSAGE = 2012, ///< 消息事件 - EVT_VOD_PLAY_PREPARED = 2013, ///< 点播,视频加载完毕 - EVT_VOD_PLAY_LOADING_END = 2014, ///< 点播,loading 结束 - EVT_PLAY_LIVE_STREAM_SWITCH_SUCC = 2015, ///< 直播,切流成功(切流可以播放不同画面大小的视频) - EVT_VOD_PLAY_TCP_CONNECT_SUCC = 2016, ///< 点播,TCP 连接成功(SDK 内部事件,不会对外抛出) - EVT_VOD_PLAY_FIRST_VIDEO_PACKET = 2017, ///< 点播,收到首帧数据(SDK 内部事件,不会对外抛出) - EVT_VOD_PLAY_DNS_RESOLVED = 2018, ///< 点播,DNS 解析完成(SDK 内部事件,不会对外抛出) - EVT_VOD_PLAY_SEEK_COMPLETE = 2019, ///< 点播,视频播放 Seek 完成(SDK 内部事件,不会对外抛出) - EVT_VIDEO_DECODER_CACHE_TOO_MANY_FRAMES = 2020, ///< 视频解码器缓存帧数过多,超过40帧(SDK 内部事件,不会对外抛出) - EVT_HW_DECODER_START_SUCC = 2021, ///< 硬解码器启动成功(SDK 内部事件,不会对外抛出) - EVT_SW_DECODER_START_SUCC = 2022, ///< 软解码器启动成功(SDK 内部事件,不会对外抛出) - EVT_AUDIO_JITTER_STATE_FIRST_LOADING = 2023, ///< 音频首次加载(SDK 内部事件,不会对外抛出) - EVT_AUDIO_JITTER_STATE_LOADING = 2024, ///< 音频正在加载(SDK 内部事件,不会对外抛出) - EVT_AUDIO_JITTER_STATE_PLAYING = 2025, ///< 音频正在播放(SDK 内部事件,不会对外抛出) - EVT_AUDIO_JITTER_STATE_FIRST_PLAY = 2026, ///< 音频首次播放(SDK 内部事件,不会对外抛出) - EVT_MIC_START_SUCC = 2027, ///< 麦克风启动成功 - EVT_PLAY_GET_METADATA = 2028, ///< 视频流MetaData事件 - EVT_MIC_RELEASE_SUCC = 2029, ///< 释放麦克风占用 - - EVT_ROOM_ENTER = 1018, ///< 进入房间成功 - EVT_ROOM_EXIT = 1019, ///< 退出房间 - EVT_ROOM_USERLIST = 1020, ///< 下发房间成员列表(不包括自己) - EVT_ROOM_NEED_REENTER = 1021, ///< WiFi 切换到4G 会触发断线重连,此时需要重新进入房间(拉取最优的服务器地址) - EVT_ROOM_REQUEST_IP_SUCC = 8001, ///< 拉取接口机服务器地址成功 - EVT_ROOM_CONNECT_SUCC = 8002, ///< 连接接口机服务器成功 - EVT_ROOM_REQUEST_AVSEAT_SUCC = 8003, ///< 请求视频位成功 -} TXLiteAVEvent; - -#endif /* __TXLITEAVCODE_H__ */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVSDK.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVSDK.h deleted file mode 100644 index 395ac255..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiteAVSDK.h +++ /dev/null @@ -1,30 +0,0 @@ -// -// TXLiteAVSDK.h -// TXLiteAVSDK -// -// Created by alderzhang on 2017/6/9. -// Copyright © 2017年 Tencent. All rights reserved. -// - - - -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveAudioSessionDelegate.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveAudioSessionDelegate.h deleted file mode 100644 index b3209d2b..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveAudioSessionDelegate.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef TXLiveAudioSessionDelegate_h -#define TXLiveAudioSessionDelegate_h - -#import - -@protocol TXLiveAudioSessionDelegate -#if TARGET_OS_IPHONE - -@optional -- (BOOL)setActive:(BOOL)active error:(NSError **)outError; - -@optional -- (BOOL)setMode:(NSString *)mode error:(NSError **)outError; - -@optional -- (BOOL)setCategory:(NSString *)category error:(NSError **)outError; - -@optional -- (BOOL)setCategory:(NSString *)category withOptions:(AVAudioSessionCategoryOptions)options error:(NSError **)outError; - -@optional -- (BOOL)setCategory:(NSString *)category mode:(NSString *)mode options:(AVAudioSessionCategoryOptions)options error:(NSError **)outError; -@optional -- (BOOL)setPreferredIOBufferDuration:(NSTimeInterval)duration error:(NSError **)outError; - -@optional -- (BOOL)setPreferredSampleRate:(double)sampleRate error:(NSError **)outError; - -@optional -- (BOOL)overrideOutputAudioPort:(AVAudioSessionPortOverride)portOverride error:(NSError **)outError; -#endif -@end -#endif /* TXLiveAudioSessionDelegate_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveBase.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveBase.h deleted file mode 100644 index 171334e6..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveBase.h +++ /dev/null @@ -1,72 +0,0 @@ -#import "TXLiveAudioSessionDelegate.h" - -typedef NS_ENUM(NSInteger, TX_Enum_Type_LogLevel) { - ///输出所有级别的log - LOGLEVEL_VERBOSE = 0, - /// 输出 DEBUG,INFO,WARNING,ERROR 和 FATAL 级别的log - LOGLEVEL_DEBUG = 1, - /// 输出 INFO,WARNNING,ERROR 和 FATAL 级别的log - LOGLEVEL_INFO = 2, - /// 只输出WARNNING,ERROR 和 FATAL 级别的log - LOGLEVEL_WARN = 3, - /// 只输出ERROR 和 FATAL 级别的log - LOGLEVEL_ERROR = 4, - /// 只输出 FATAL 级别的log - LOGLEVEL_FATAL = 5, - /// 不输出任何sdk log - LOGLEVEL_NULL = 6, -}; - -@protocol TXLiveBaseDelegate -@optional - -/** - @brief Log回调  - @discussion - 1.实现TXLiveBaseDelegate,建议在一个比较早的初始化类中如AppDelegate - 2.在初始化中设置此回调,eg:[TXLiveBase sharedInstance].delegate = self; - 3.level类型参见TX_Enum_Type_LogLevel - 4.module值暂无具体意义,目前为固定值TXLiteAVSDK - */ --(void) onLog:(NSString*)log LogLevel:(int)level WhichModule:(NSString*)module; - -@end - -@interface TXLiveBase : NSObject - -/// 通过这个delegate将全部log回调给SDK使用者,由SDK使用者来决定log如何处理 -@property (nonatomic, weak) id delegate; - -+ (instancetype) sharedInstance; - -/** 设置log输出级别 - * @param level 参见 LOGLEVEL - * - */ -+ (void) setLogLevel:(TX_Enum_Type_LogLevel)level; - -/** - * 启用或禁用控制台日志打印 - * @param enabled 指定是否启用 - */ -+ (void) setConsoleEnabled:(BOOL)enabled; - -+ (void) setAppVersion:(NSString *)verNum; - -+ (void)setAudioSessionDelegate:(id)delegate; - -/// 获取SDK版本信息 -+ (NSString *)getSDKVersionStr; - -///  获取pitu版本信息 -+ (NSString *)getPituSDKVersion; - -/// 设置appID,云控使用 -+ (void)setAppID:(NSString*)appID; - -/// 设置sdk的licence下载url和key -+ (void)setLicenceURL:(NSString *)url key:(NSString *)key; - -/// 获取 Licence 信息 -+ (NSString *)getLicenceInfo; -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayConfig.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayConfig.h deleted file mode 100644 index c778c681..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayConfig.h +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Module: TXLivePlayConfig @ TXLiteAVSDK - * - * Function: 腾讯云直播播放器的参数配置模块 - * - * Version: <:Version:> - */ - -#import - -/** - * 腾讯云直播播放器的参数配置模块 - * - * 主要负责 TXLivePlayer 对应的参数设置,其中绝大多数设置项在播放开始之后再设置是无效的。 - */ -@interface TXLivePlayConfig : NSObject - -///////////////////////////////////////////////////////////////////////////////// -// -// 常用设置项 -// -///////////////////////////////////////////////////////////////////////////////// - -///【字段含义】播放器缓存时间,单位秒,取值需要大于0,默认值:5 -@property(nonatomic, assign) float cacheTime; - -///【字段含义】是否自动调整播放器缓存时间,默认值:YES -/// YES:启用自动调整,自动调整的最大值和最小值可以分别通过修改 maxCacheTime 和 minCacheTime 来设置 -/// NO:关闭自动调整,采用默认的指定缓存时间(1s),可以通过修改 cacheTime 来调整缓存时间 -@property(nonatomic, assign) BOOL bAutoAdjustCacheTime; - -///【字段含义】播放器缓存自动调整的最大时间,单位秒,取值需要大于0,默认值:5 -@property(nonatomic, assign) float maxAutoAdjustCacheTime; - -///【字段含义】播放器缓存自动调整的最小时间,单位秒,取值需要大于0,默认值为1 -@property(nonatomic, assign) float minAutoAdjustCacheTime; - -///【字段含义】播放器视频卡顿报警阈值,单位毫秒 -///【推荐取值】800 -///【特别说明】只有渲染间隔超过这个阈值的卡顿才会有 PLAY_WARNING_VIDEO_PLAY_LAG 通知 -@property(nonatomic, assign) int videoBlockThreshold; - -///【字段含义】播放器遭遇网络连接断开时 SDK 默认重试的次数,取值范围1 - 10,默认值:3。 -@property(nonatomic, assign) int connectRetryCount; - -///【字段含义】网络重连的时间间隔,单位秒,取值范围3 - 30,默认值:3。 -@property(nonatomic, assign) int connectRetryInterval; - -///【字段含义】是否开启回声消除, 默认值为 NO -@property(nonatomic, assign) BOOL enableAEC; - -///【字段含义】是否开启消息通道, 默认值为 NO -@property(nonatomic, assign) BOOL enableMessage; - -///【字段含义】是否开启 MetaData 数据回调,默认值为 NO。 -/// YES:SDK 通过 EVT_PLAY_GET_METADATA 消息抛出视频流的 MetaData 数据; -/// NO:SDK 不抛出视频流的 MetaData 数据。 -/// 标准直播流都会在最开始的阶段有一个 MetaData 数据头,该数据头支持定制。 -/// 您可以通过 TXLivePushConfig 中的 metaData 属性设置一些自定义数据,再通过 TXLivePlayListener 中的 -/// onPlayEvent(EVT_PLAY_GET_METADATA) 消息接收到这些数据。 -///【特别说明】每条音视频流中只能设置一个 MetaData 数据头,除非断网重连,否则 TXLivePlayer 的 EVT_PLAY_GET_METADATA 消息也只会收到一次。 -@property(nonatomic, assign) BOOL enableMetaData; - -///【字段含义】视频渲染对象回调的视频格式,默认值:kCVPixelFormatType_420YpCbCr8Planar -///【特别说明】支持:kCVPixelFormatType_420YpCbCr8Planar 和 kCVPixelFormatType_420YpCbCr8BiPlanarFullRange -@property(nonatomic, assign) OSType playerPixelFormatType; - - -///////////////////////////////////////////////////////////////////////////////// -// -// 待废弃设置项 -// -///////////////////////////////////////////////////////////////////////////////// - -///【字段含义】是否开启就近选路,待废弃,默认值:YES -@property(nonatomic, assign) BOOL enableNearestIP; - -///【字段含义】RTMP 传输通道的类型,待废弃,默认值为:RTMP_CHANNEL_TYPE_AUTO -@property (nonatomic, assign) int rtmpChannelType; - -#if TARGET_OS_IPHONE -///【字段含义】视频缓存目录,点播 MP4、HLS 有效 -@property NSString *cacheFolderPath; -///【字段含义】最多缓存文件个数,默认值:0 -@property int maxCacheItems; -///【字段含义】自定义 HTTP Headers -@property NSDictionary *headers; -#endif - -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayListener.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayListener.h deleted file mode 100644 index 1e7e3e55..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayListener.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Module: TXLivePlayListener @ TXLiteAVSDK - * - * Function: 腾讯云直播播放的回调通知 - * - * Version: <:Version:> - */ - -#import -#import "TXLiveSDKTypeDef.h" - -/// 腾讯云直播播放的回调通知 -@protocol TXLivePlayListener - -/** - * 直播事件通知 - * @param EvtID 参见 TXLiveSDKEventDef.h - * @param param 参见 TXLiveSDKTypeDef.h - */ -- (void)onPlayEvent:(int)EvtID withParam:(NSDictionary *)param; - -/** - * 网络状态通知 - * @param param 参见 TXLiveSDKTypeDef.h - */ -- (void)onNetStatus:(NSDictionary *)param; - -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayer.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayer.h deleted file mode 100644 index a041e24f..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLivePlayer.h +++ /dev/null @@ -1,368 +0,0 @@ -/* - * - * Module: TXLivePlayer @ TXLiteAVSDK - * - * Function: 腾讯云直播播放器 - * - * Version: <:Version:> - */ - -#import -#import "TXLiveSDKTypeDef.h" -#import "TXLivePlayListener.h" -#import "TXLivePlayConfig.h" -#import "TXVideoCustomProcessDelegate.h" -#import "TXLiveRecordTypeDef.h" -#import "TXLiveRecordListener.h" -#import "TXAudioRawDataDelegate.h" - -/** - * 支持的直播和点播类型 - * - * @note 新版本的点播 SDK,推荐参考 TXVodPlayer.h - */ -typedef NS_ENUM(NSInteger, TX_Enum_PlayType) { - /// RTMP 直播 - PLAY_TYPE_LIVE_RTMP = 0, - /// FLV 直播 - PLAY_TYPE_LIVE_FLV = 1, -#if TARGET_OS_IPHONE - /// FLV 点播 - PLAY_TYPE_VOD_FLV = 2, - /// HLS 点播 - PLAY_TYPE_VOD_HLS = 3, - /// MP4点播 - PLAY_TYPE_VOD_MP4 = 4, -#endif - /// RTMP 直播加速播放 - PLAY_TYPE_LIVE_RTMP_ACC = 5, -#if TARGET_OS_IPHONE - /// 本地视频文件 - PLAY_TYPE_LOCAL_VIDEO = 6, -#endif -}; - - -/** - * 视频播放器 - * - * 主要负责将直播流的音视频画面进行解码和本地渲染,包含如下技术特点: - * - 针对腾讯云的拉流地址,可使用低延时拉流,实现直播连麦等相关场景。 - * - 针对腾讯云的拉流地址,可使用直播时移功能,能够实现直播观看与时移观看的无缝切换。 - * - 支持自定义的音视频数据处理,让您可以根据项目需要处理直播流中的音视频数据后,进行渲染以及播放。 - */ -@interface TXLivePlayer : NSObject - -///////////////////////////////////////////////////////////////////////////////// -// -// (一)SDK 基础函数 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name SDK 基础函数 -/// @{ -/** - * 1.1 设置播放回调,见 “TXLivePlayListener.h” 文件中的详细定义 - */ -@property(nonatomic, weak) id delegate; - -/** - * 1.2 设置视频处理回调,见 “TXVideoCustomProcessDelegate.h” 文件中的详细定义 - */ -@property(nonatomic, weak) id videoProcessDelegate; - -/** - * 1.3 设置音频处理回调,见 “TXAudioRawDataDelegate.h” 文件中的详细定义 - */ -@property(nonatomic, weak) id audioRawDataDelegate; - -/** - * 1.4 是否开启硬件加速,默认值:NO - */ -@property(nonatomic, assign) BOOL enableHWAcceleration; - -/** - * 1.5 设置 TXLivePlayConfig 播放配置项,见 “TXLivePlayConfig.h” 文件中的详细定义 - */ -@property(nonatomic, copy) TXLivePlayConfig *config; - - -#if TARGET_OS_IPHONE -/** - * 1.6 设置短视频录制回调,见 “TXLiveRecordListener.h” 文件中的详细定义 - */ -@property (nonatomic, weak) id recordDelegate; - -/** - * 1.7 startPlay 后是否立即播放,默认 YES,只有点播有效 - */ -@property BOOL isAutoPlay; -#endif - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (二)播放基础接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 播放基础接口 -/// @{ -/** - * 2.1 创建 Video 渲染 View,该控件承载着视频内容的展示。 - * - * 变更历史:1.5.2版本将参数 frame 废弃,设置此参数无效,控件大小与参数 view 的大小保持一致,如需修改控件的大小及位置,请调整父 view 的大小及位置。 参考文档:[绑定渲染界面](https://www.qcloud.com/doc/api/258/4736#step-3.3A-.E7.BB.91.E5.AE.9A.E6.B8.B2.E6.9F.93.E7.95.8C.E9.9D.A2) - * - * @param frame Widget 在父 view 中的 frame - * @param view 父 view - * @param idx Widget 在父 view 上 的层级位置 - */ -- (void)setupVideoWidget:(CGRect)frame containView:(TXView *)view insertIndex:(unsigned int)idx; - -/* - * 修改 VideoWidget frame - * 变更历史:1.5.2版本将此方法废弃,调用此方法无效,如需修改控件的大小及位置,请调整父 view 的大小及位置 - * 参考文档:https://www.qcloud.com/doc/api/258/4736#step-3.3A-.E7.BB.91.E5.AE.9A.E6.B8.B2.E6.9F.93.E7.95.8C.E9.9D.A2 - */ -//- (void)resetVideoWidgetFrame:(CGRect)frame; - -/** - * 2.2 移除 Video 渲染 Widget - */ -- (void)removeVideoWidget; - -/** - * 2.3 启动从指定 URL 播放 RTMP 音视频流 - * - * @param url 完整的 URL(如果播放的是本地视频文件,这里传本地视频文件的完整路径) - * @param playType 播放类型 - * @return 0表示成功,其它为失败 - */ -- (int)startPlay:(NSString *)url type:(TX_Enum_PlayType)playType; - -/** - * 2.4 停止播放音视频流 - * - * @return 0:成功;其它:失败 - */ -- (int)stopPlay; - -/** - * 2.5 是否正在播放 - * - * @return YES 拉流中,NO 没有拉流 - */ -- (BOOL)isPlaying; - -/** - * 2.6 暂停播放 - * - * 适用于点播,直播(此接口会暂停数据拉流,不会销毁播放器,暂停后,播放器会显示最后一帧数据图像) - */ -- (void)pause; - -/** - * 2.6 继续播放,适用于点播,直播 - */ -- (void)resume; - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (三)视频相关接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 视频相关接口 -/// @{ -/** - * 3.1 设置画面的方向 - * - * @param rotation 方向 - * @see TX_Enum_Type_HomeOrientation - */ -- (void)setRenderRotation:(TX_Enum_Type_HomeOrientation)rotation; - -/** - * 3.2 设置画面的裁剪模式 - * - * @param renderMode 裁剪 - * @see TX_Enum_Type_RenderMode - */ -- (void)setRenderMode:(TX_Enum_Type_RenderMode)renderMode; - -#if TARGET_OS_IPHONE -/** - * 3.3 截屏 - * - * @param snapshotCompletionBlock 通过回调返回当前图像 - */ -- (void)snapshot:(void (^)(TXImage *))snapshotCompletionBlock; -#endif - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (四)音频相关接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 音频相关接口 -/// @{ -/** - * 4.1 设置静音 - */ -- (void)setMute:(BOOL)bEnable; - -/** - * 4.2 设置音量 - * - * @param volume 音量大小,取值范围0 - 100 - */ -- (void)setVolume:(int)volume; - -#if TARGET_OS_IPHONE -/** - * 4.3 设置声音播放模式(切换扬声器,听筒) - * @param audioRoute 声音播放模式 - */ -+ (void)setAudioRoute:(TXAudioRouteType)audioRoute; -#endif - -/** - * 4.4 设置音量大小回调接口 - * - * @param volumeEvaluationListener 音量大小回调接口,音量取值范围0 - 100 - */ -- (void)setAudioVolumeEvaluationListener:(void(^)(int))volumeEvaluationListener; - -/** - * 4.5 启用音量大小提示 - * - * 开启后会在 volumeEvaluationListener 中获取到 SDK 对音量大小值的评估。 - * - * @param interval 决定了 volumeEvaluationListener 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms; - */ -- (void)enableAudioVolumeEvaluation:(NSUInteger)interval; - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (五)直播时移相关接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 直播时移相关接口 -/// @{ -/** - * 5.1 直播时移准备,拉取该直播流的起始播放时间。 - * - * 使用时移功能需在播放开始后调用此方法,否则时移失败。时移的使用请参考文档 [超级播放器](https://cloud.tencent.com/document/product/881/20208#.E6.97.B6.E7.A7.BB.E6.92.AD.E6.94.BE) - * - * @warning 非腾讯云直播地址不能时移 - * - * @param domain 时移域名 - * @param bizId 流 bizId - * - * @return 0:OK;-1:无播放地址;-2:appId 未配置 - */ -- (int)prepareLiveSeek:(NSString*)domain bizId:(NSInteger)bizId; - -/** - * 5.2 停止时移播放,返回直播 - * - * @return 0:成功;其它:失败 - */ -- (int)resumeLive; - -#if TARGET_OS_IPHONE -/** - * 5.3 播放跳转到音视频流某个时间 - * @param time 流时间,单位为秒 - * @return 0:成功;其它:失败 - */ -- (int)seek:(float)time; -#endif - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (六)视频录制相关接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 视频录制相关接口 -/// @{ -#if TARGET_OS_IPHONE -/** - * 6.1 开始录制短视频 - * - * @param recordType 参见 TXRecordType 定义 - * @return 0:成功;1:正在录制短视频;-2:videoRecorder 初始化失败。 - */ -- (int)startRecord:(TXRecordType)recordType; - -/** - * 6.2 结束录制短视频 - * - * @return 0:成功;1:不存在录制任务;-2:videoRecorder 未初始化。 - */ -- (int)stopRecord; - -/** - * 6.3 设置播放速率 - * - * @param rate 正常速度为1.0;小于为慢速;大于为快速。最大建议不超过2.0 - */ -- (void)setRate:(float)rate; -#endif - -/// @} - -///////////////////////////////////////////////////////////////////////////////// -// -// (七)更多实用接口 -// -///////////////////////////////////////////////////////////////////////////////// - -/// @name 更多实用接口 -/// @{ -/** - * 7.1 设置状态浮层 view 在渲染 view 上的边距 - * - * @param margin 边距 - */ -- (void)setLogViewMargin:(TXEdgeInsets)margin; - -/** - * 7.2 是否显示播放状态统计及事件消息浮层 view - * - * @param isShow 是否显示 - */ -- (void)showVideoDebugLog:(BOOL)isShow; - -/** - * 7.3 FLV 直播无缝切换 - * - * @param playUrl 播放地址 - * @return 0:成功;其它:失败 - * @warning playUrl 必须是当前播放直播流的不同清晰度,切换到无关流地址可能会失败 - */ -- (int)switchStream:(NSString *)playUrl; - -/** - * 7.4 调用实验性 API 接口 - * - * @note 该接口用于调用一些实验性功能 - * @param jsonStr 接口及参数描述的 JSON 字符串 - */ -- (void)callExperimentalAPI:(NSString*)jsonStr; - -@end - -/// @} diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordListener.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordListener.h deleted file mode 100644 index fd86b089..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordListener.h +++ /dev/null @@ -1,27 +0,0 @@ -#import "TXLiveRecordTypeDef.h" - - -/** - * 短视频录制回调定义 - */ -@protocol TXLiveRecordListener -@optional - -/** - * 短视频录制进度 - */ --(void) onRecordProgress:(NSInteger)milliSecond; - -/** - * 短视频录制完成 - */ --(void) onRecordComplete:(TXRecordResult*)result; - -/** - * 短视频录制事件通知 - */ --(void) onRecordEvent:(NSDictionary*)evt; - -@end - - diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordTypeDef.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordTypeDef.h deleted file mode 100644 index 7159c301..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveRecordTypeDef.h +++ /dev/null @@ -1,36 +0,0 @@ -#import -#import "TXLiveSDKTypeDef.h" - -/// PlayRecord 录制类型定义 -typedef NS_ENUM(NSInteger, TXRecordType) -{ - ///视频源为正在播放的视频流 - RECORD_TYPE_STREAM_SOURCE = 1, -}; - - - -/// 录制结果错误码定义 -typedef NS_ENUM(NSInteger, TXRecordResultCode) -{ - /// 录制成功(业务层主动结束录制) - RECORD_RESULT_OK = 0, - /// 录制成功(sdk自动结束录制,可能原因:1,app进入后台,2,app被闹钟或电话打断,3,网络断连接) - RECORD_RESULT_OK_INTERRUPT = 1, - /// 录制失败 - RECORD_RESULT_FAILED = 1001, -}; - - -/// 录制结果 -@interface TXRecordResult : NSObject -/// 错误码 -@property (nonatomic, assign) TXRecordResultCode retCode; -/// 错误描述信息 -@property (nonatomic, strong) NSString* descMsg; -/// 视频文件path -@property (nonatomic, strong) NSString* videoPath; -/// 视频封面 -@property (nonatomic, strong) TXImage* coverImage; -@end - diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKEventDef.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKEventDef.h deleted file mode 100644 index 5e422b72..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKEventDef.h +++ /dev/null @@ -1,96 +0,0 @@ -#ifndef __TX_LIVE_SDK_EVENT_DEF_H__ -#define __TX_LIVE_SDK_EVENT_DEF_H__ - -#include "TXLiteAVCode.h" - -enum EventID -{ - /********************************************************************************** - * 推流事件列表 - **********************************************************************************/ - PUSH_EVT_CONNECT_SUCC = EVT_RTMP_PUSH_CONNECT_SUCC, //> 直播: 已经连接RTMP推流服务器 - PUSH_EVT_PUSH_BEGIN = EVT_RTMP_PUSH_BEGIN, //> 直播: 已经与RTMP服务器握手完毕,开始推流 - PUSH_EVT_OPEN_CAMERA_SUCC = EVT_CAMERA_START_SUCC, //> 打开摄像头成功 - PUSH_EVT_CHANGE_RESOLUTION = EVT_UP_CHANGE_RESOLUTION, //> 推流动态调整分辨率 - PUSH_EVT_CHANGE_BITRATE = EVT_UP_CHANGE_BITRATE, //> 推流动态调整码率 - PUSH_EVT_FIRST_FRAME_AVAILABLE = EVT_FIRST_FRAME_AVAILABLE, //> 首帧画面采集完成 - PUSH_EVT_START_VIDEO_ENCODER = EVT_START_VIDEO_ENCODER, //> 编码器启动 - PUSH_EVT_ROOM_IN = EVT_ROOM_ENTER, //> 已经在webrtc房间里面,进房成功后通知 - PUSH_EVT_ROOM_OUT = EVT_ROOM_EXIT, //> 不在webrtc房间里面,进房失败或者中途退出房间时通知 - PUSH_EVT_ROOM_USERLIST = EVT_ROOM_USERLIST, //> 下发webrtc房间成员列表(不包括自己) - PUSH_EVT_ROOM_NEED_REENTER = EVT_ROOM_NEED_REENTER, //> WiFi切换到4G会触发断线重连,此时需要重新进入webrtc房间(拉取最优的服务器地址) - - PUSH_ERR_OPEN_CAMERA_FAIL = ERR_CAMERA_START_FAIL, //> 打开摄像头失败 - PUSH_ERR_OPEN_MIC_FAIL = ERR_MIC_START_FAIL, //> 打开麦克风失败 - PUSH_ERR_VIDEO_ENCODE_FAIL = ERR_VIDEO_ENCODE_FAIL, //> 视频编码失败 - PUSH_ERR_AUDIO_ENCODE_FAIL = ERR_AUDIO_ENCODE_FAIL, //> 音频编码失败 - PUSH_ERR_UNSUPPORTED_RESOLUTION = ERR_UNSUPPORTED_RESOLUTION, //> 不支持的视频分辨率 - PUSH_ERR_UNSUPPORTED_SAMPLERATE = ERR_UNSUPPORTED_SAMPLERATE, //> 不支持的音频采样率 - PUSH_ERR_NET_DISCONNECT = ERR_RTMP_PUSH_NET_DISCONNECT, //> 网络断连,且经多次重连抢救无效,可以放弃治疗,更多重试请自行重启推流 - PUSH_ERR_AUDIO_SYSTEM_NOT_WORK = -1308, //> 系统异常,录音失败 - PUSH_ERR_INVALID_ADDRESS = ERR_RTMP_PUSH_INVALID_ADDRESS, //> 推流地址非法 - - PUSH_WARNING_NET_BUSY = WARNING_NET_BUSY, //> 网络状况不佳:上行带宽太小,上传数据受阻 - PUSH_WARNING_RECONNECT = WARNING_RTMP_SERVER_RECONNECT, //> 网络断连, 已启动自动重连 (自动重连连续失败超过三次会放弃) - PUSH_WARNING_HW_ACCELERATION_FAIL = WARNING_HW_ENCODER_START_FAIL, //> 硬编码启动失败,采用软编码 - PUSH_WARNING_VIDEO_ENCODE_FAIL = 1104, //> 视频编码失败,非致命错,内部会重启编码器 - PUSH_WARNING_BEAUTYSURFACE_VIEW_INIT_FAIL = 1105, //> 视频编码码率异常,警告 - PUSH_WARNING_VIDEO_ENCODE_BITRATE_OVERFLOW = 1106, //> 视频编码码率异常,警告 - PUSH_WARNING_DNS_FAIL = WARNING_RTMP_DNS_FAIL, //> RTMP -DNS解析失败 - PUSH_WARNING_SEVER_CONN_FAIL = WARNING_RTMP_SEVER_CONN_FAIL, //> RTMP服务器连接失败 - PUSH_WARNING_SHAKE_FAIL = WARNING_RTMP_SHAKE_FAIL, //> RTMP服务器握手失败 - PUSH_WARNING_SERVER_DISCONNECT = WARNING_RTMP_SERVER_BREAK_CONNECT, //> RTMP服务器主动断开,请检查推流地址的合法性或防盗链有效期 - PUSH_WARNING_READ_WRITE_FAIL = WARNING_RTMP_READ_WRITE_FAIL, //> RTMP 读/写失败,将会断开连接。 - - /*内部事件*/INNER_EVT_SET_BITRATE_4_SCREEN_CAPTURE = 100001, //> 动态设置录屏编码码率 - /*内部事件*/INNER_EVT_BGM_PLAY_FINISH = 100002, //> BGM播放完毕 - - - - /********************************************************************************** - * 播放事件列表 - **********************************************************************************/ - PLAY_EVT_CONNECT_SUCC = EVT_PLAY_LIVE_STREAM_CONNECT_SUCC, //> 直播,已经连接RTMP拉流服务器 - PLAY_EVT_RTMP_STREAM_BEGIN = EVT_PLAY_LIVE_STREAM_BEGIN, //> 直播,已经与RTMP服务器握手完毕,开始拉流 - PLAY_EVT_RCV_FIRST_I_FRAME = EVT_RENDER_FIRST_I_FRAME, //> 渲染首个视频数据包(IDR) - PLAY_EVT_PLAY_BEGIN = EVT_VIDEO_PLAY_BEGIN, //> 视频播放开始 - PLAY_EVT_PLAY_PROGRESS = EVT_VIDEO_PLAY_PROGRESS, //> 视频播放进度 - PLAY_EVT_PLAY_END = EVT_VIDEO_PLAY_END, //> 视频播放结束 - PLAY_EVT_PLAY_LOADING = EVT_VIDEO_PLAY_LOADING, //> 视频播放loading - PLAY_EVT_START_VIDEO_DECODER = EVT_START_VIDEO_DECODER, //> 解码器启动 - PLAY_EVT_CHANGE_RESOLUTION = EVT_DOWN_CHANGE_RESOLUTION, //> 视频分辨率改变 - PLAY_EVT_GET_PLAYINFO_SUCC = EVT_GET_VODFILE_MEDIAINFO_SUCC, //> 获取点播文件信息成功 - PLAY_EVT_CHANGE_ROTATION = EVT_VIDEO_CHANGE_ROTATION, //> MP4视频旋转角度 - PLAY_EVT_GET_MESSAGE = EVT_PLAY_GET_MESSAGE, //> 消息事件 - PLAY_EVT_VOD_PLAY_PREPARED = EVT_VOD_PLAY_PREPARED, //> 点播,视频加载完毕 - PLAY_EVT_VOD_LOADING_END = EVT_VOD_PLAY_LOADING_END, //> 点播,loading结束 - PLAY_EVT_STREAM_SWITCH_SUCC = EVT_PLAY_LIVE_STREAM_SWITCH_SUCC, //> 直播,切流成功(切流可以播放不同画面大小的视频) - PLAY_EVT_GET_METADATA = EVT_PLAY_GET_METADATA, //> TXLivePlayer 接收到视频流中的 metadata 头信息(一条视频流仅触发一次) - - - PLAY_ERR_NET_DISCONNECT = ERR_PLAY_LIVE_STREAM_NET_DISCONNECT, //> 直播,网络断连,且经多次重连抢救无效,可以放弃治疗,更多重试请自行重启播放 - PLAY_ERR_GET_RTMP_ACC_URL_FAIL = ERR_GET_RTMP_ACC_URL_FAIL, //> 直播,获取加速拉流地址失败 - PLAY_ERR_FILE_NOT_FOUND = ERR_FILE_NOT_FOUND, //> 播放文件不存在 - PLAY_ERR_HEVC_DECODE_FAIL = ERR_HEVC_DECODE_FAIL, //> H265解码失败 - PLAY_ERR_HLS_KEY = ERR_VOD_DECRYPT_FAIL, //> HLS解码key获取失败 - PLAY_ERR_GET_PLAYINFO_FAIL = ERR_GET_VODFILE_MEDIAINFO_FAIL, //> 获取点播文件信息失败 - PLAY_ERR_STREAM_SWITCH_FAIL = ERR_PLAY_LIVE_STREAM_SWITCH_FAIL, //> 直播,切流失败(切流可以播放不同画面大小的视频) - - PLAY_WARNING_VIDEO_DECODE_FAIL = WARNING_VIDEO_FRAME_DECODE_FAIL, //> 当前视频帧解码失败 - PLAY_WARNING_AUDIO_DECODE_FAIL = WARNING_AUDIO_FRAME_DECODE_FAIL, //> 当前音频帧解码失败 - PLAY_WARNING_RECONNECT = WARNING_LIVE_STREAM_SERVER_RECONNECT, //> 网络断连, 已启动自动重连 (自动重连连续失败超过三次会放弃) - PLAY_WARNING_RECV_DATA_LAG = WARNING_RECV_DATA_LAG, //> 网络来包不稳:可能是下行带宽不足,或由于主播端出流不均匀 - PLAY_WARNING_VIDEO_PLAY_LAG = WARNING_VIDEO_PLAY_LAG, //> 当前视频播放出现卡顿(用户直观感受) - PLAY_WARNING_HW_ACCELERATION_FAIL = WARNING_HW_DECODER_START_FAIL, //> 硬解启动失败,采用软解 - PLAY_WARNING_VIDEO_DISCONTINUITY = 2107, //> 当前视频帧不连续,可能丢帧 - PLAY_WARNING_FIRST_IDR_HW_DECODE_FAIL = WARNING_VIDEO_DECODER_HW_TO_SW, //> 当前流硬解第一个I帧失败,SDK自动切软解 - PLAY_WARNING_DNS_FAIL = WARNING_RTMP_DNS_FAIL, //> RTMP -DNS解析失败 - PLAY_WARNING_SEVER_CONN_FAIL = WARNING_RTMP_SEVER_CONN_FAIL, //> RTMP服务器连接失败 - PLAY_WARNING_SHAKE_FAIL = WARNING_RTMP_SHAKE_FAIL, //> RTMP服务器握手失败 - PLAY_WARNING_SERVER_DISCONNECT = WARNING_RTMP_SERVER_BREAK_CONNECT, //> RTMP服务器主动断开 - PLAY_WARNING_READ_WRITE_FAIL = WARNING_RTMP_READ_WRITE_FAIL, //> RTMP 读/写失败,将会断开连接。 - - /*UGC*/UGC_WRITE_FILE_FAIL = 4001, //> UGC写文件失败 -}; - -#endif // __TX_LIVE_SDK_TYPE_DEF_H__ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKTypeDef.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKTypeDef.h deleted file mode 100644 index a2765b8c..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXLiveSDKTypeDef.h +++ /dev/null @@ -1,329 +0,0 @@ -#ifndef __TX_LIVE_SDK_TYPE_DEF_H__ -#define __TX_LIVE_SDK_TYPE_DEF_H__ - -#include "TXLiveSDKEventDef.h" -#import - -#if TARGET_OS_IPHONE -#import -typedef UIView TXView; -typedef UIImage TXImage; -typedef UIEdgeInsets TXEdgeInsets; -#elif TARGET_OS_MAC -#import -typedef NSView TXView; -typedef NSImage TXImage; -typedef NSEdgeInsets TXEdgeInsets; -#endif - - - -///////////////////////////////////////////////////////////////////////////////// -// -// 【视频相关枚举值定义】 -// -///////////////////////////////////////////////////////////////////////////////// - -/** - * 1.1 视频分辨率 - * - * 在普通模式下,TXLivePusher 只支持三种固定的分辨率,即:360 × 640、540 × 960 以及 720 × 1280。 - * - *【如何横屏推流】 - * 如果希望使用 640 × 360、960 × 540、1280 × 720 这样的横屏分辨率,需要设置 TXLivePushConfig 中的 homeOrientation 属性, - * 并使用 TXLivePusher 中的 setRenderRotation 接口进行画面旋转。 - * - *【自定义分辨率】 - * 如果希望使用其他分辨率,可以设置 TXLivePushConfig 中的 customModeType 为 CUSTOM_MODE_VIDEO_CAPTURE, - * 自己采集 SampleBuffer 送给 TXLivePusher 的 sendVideoSampleBuffer 接口。 - * - *【建议的分辨率】 - * 手机直播场景下最常用的分辨率为 9:16 的竖屏分辨率 540 × 960。 - * 从清晰的角度,540 × 960 比 360 × 640 要清晰,同时跟 720 × 1280 相当。 - * 从性能的角度,540 × 960 可以避免前置摄像头开启 720 × 1280 的采集分辨率,对于美颜开销很大的场景能节省不少的计算量。 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_VideoResolution) { - - /// 竖屏分辨率,宽高比为 9:16 - VIDEO_RESOLUTION_TYPE_360_640 = 0, ///< 建议码率 800kbps - VIDEO_RESOLUTION_TYPE_540_960 = 1, ///< 建议码率 1200kbps - VIDEO_RESOLUTION_TYPE_720_1280 = 2, ///< 建议码率 1800kbps - - /// 如下均为内建分辨率,为 SDK 内部使用,不支持通过接口进行设置 - VIDEO_RESOLUTION_TYPE_640_360 = 3, - VIDEO_RESOLUTION_TYPE_960_540 = 4, - VIDEO_RESOLUTION_TYPE_1280_720 = 5, - - VIDEO_RESOLUTION_TYPE_320_480 = 6, - VIDEO_RESOLUTION_TYPE_180_320 = 7, - VIDEO_RESOLUTION_TYPE_270_480 = 8, - VIDEO_RESOLUTION_TYPE_320_180 = 9, - VIDEO_RESOLUTION_TYPE_480_270 = 10, - - VIDEO_RESOLUTION_TYPE_240_320 = 11, - VIDEO_RESOLUTION_TYPE_360_480 = 12, - VIDEO_RESOLUTION_TYPE_480_640 = 13, - VIDEO_RESOLUTION_TYPE_320_240 = 14, - VIDEO_RESOLUTION_TYPE_480_360 = 15, - VIDEO_RESOLUTION_TYPE_640_480 = 16, - - VIDEO_RESOLUTION_TYPE_480_480 = 17, - VIDEO_RESOLUTION_TYPE_270_270 = 18, - VIDEO_RESOLUTION_TYPE_160_160 = 19, -}; - -/** - * 1.2 画面质量挡位 - * - * 如果您希望调整直播的编码参数,建议您直接使用 TXLivePusher 提供的 setVideoQuality 接口。 - * 由于视频编码参数中的分辨率,码率和帧率对最终效果都有着复杂的影响,如果您之前没有相关操作经验,不建议直接修改这些编码参数。 - * 我们在 setVideoQuality 接口中提供了如下几个挡位供您选择: - * - * 1. 标清:采用 360 × 640 的分辨率,码率调控范围 300kbps - 800kbps,关闭网络自适应时的码率为 800kbps,适合网络较差的直播环境。 - * 2. 高清:采用 540 × 960 的分辨率,码率调控范围 600kbps - 1500kbps,关闭网络自适应时的码率为 1200kbps,常规手机直播的推荐挡位。 - * 3. 超清:采用 720 × 1280 的分辨率,码率调控范围 600kbps - 1800kbps,关闭网络自适应时的码率为 1800kbps,能耗高,但清晰度较标清提升并不明显。 - * 4. 连麦(大主播):主播从原来的“推流状态”进入“连麦状态”后,可以通过 setVideoQuality 接口调整自 MAIN_PUBLISHER 挡位。 - * 5. 连麦(小主播):观众从原来的“播放状态”进入“连麦状态”后,可以通过 setVideoQuality 接口调整自 SUB_PUBLISHER 挡位。 - * 6. 视频通话:该选项后续会逐步废弃,如果您希望实现纯视频通话而非直播功能,推荐使用腾讯云 [TRTC](https://cloud.tencent.com/product/trtc) 服务。 - * - * 【推荐设置】如果您对整个平台的清晰度要求比较高,推荐使用 setVideoQuality(HIGH_DEFINITION, NO, NO) 的组合。 - * 如果您的主播有很多三四线城市的网络适配要求,推荐使用 setVideoQuality(HIGH_DEFINITION, YES, NO) 的组合。 - * - * @note 在开启硬件加速后,您可能会发现诸如 368 × 640 或者 544 × 960 这样的“不完美”分辨率。 - * 这是由于部分硬编码器要求像素能被 16 整除所致,属于正常现象,您可以通过播放端的填充模式解决“小黑边”问题。 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_VideoQuality) { - VIDEO_QUALITY_STANDARD_DEFINITION = 1, ///< 标清:采用 360 × 640 的分辨率 - VIDEO_QUALITY_HIGH_DEFINITION = 2, ///< 高清:采用 540 × 960 的分辨率 - VIDEO_QUALITY_SUPER_DEFINITION = 3, ///< 超清:采用 720 × 1280 的分辨率 - VIDEO_QUALITY_LINKMIC_MAIN_PUBLISHER = 4, ///< 连麦场景下的大主播使用 - VIDEO_QUALITY_LINKMIC_SUB_PUBLISHER = 5, ///< 连麦场景下的小主播(连麦的观众)使用 - VIDEO_QUALITY_REALTIME_VIDEOCHAT = 6, ///< 纯视频通话场景使用(待废弃) -}; - -/** - * 1.3 画面旋转方向 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_HomeOrientation) { - HOME_ORIENTATION_RIGHT = 0, ///< HOME 键在右边,横屏模式 - HOME_ORIENTATION_DOWN = 1, ///< HOME 键在下面,手机直播中最常见的竖屏直播模式 - HOME_ORIENTATION_LEFT = 2, ///< HOME 键在左边,横屏模式 - HOME_ORIENTATION_UP = 3, ///< HOME 键在上边,竖屏直播(适合小米 MIX2) -}; - -/** - * 1.4 画面填充模式 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_RenderMode) { - - RENDER_MODE_FILL_SCREEN = 0, ///< 图像铺满屏幕,不留黑边,如果图像宽高比不同于屏幕宽高比,部分画面内容会被裁剪掉。 - RENDER_MODE_FILL_EDGE = 1, ///< 图像适应屏幕,保持画面完整,但如果图像宽高比不同于屏幕宽高比,会有黑边的存在。 -}; - -/** - * 1.5 美颜风格 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_BeautyStyle) { - BEAUTY_STYLE_SMOOTH = 0, ///< 光滑,磨皮程度较高,更适合秀场直播类场景下使用。 - BEAUTY_STYLE_NATURE = 1, ///< 自然,磨皮算法会最大限度保留皮肤细节。 - BEAUTY_STYLE_PITU = 2, ///< 天天P图版美颜, 需要商用企业版 SDK 才能支持,普通版本设置此选项无效。 -}; - -/** - * 1.6 美颜程度,取值范围1 - 9,该枚举值定义了关闭和最大值。 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_BeautyFilterDepth) { - BEAUTY_FILTER_DEPTH_CLOSE = 0, ///< 关闭美颜 - BEAUTY_FILTER_DEPTH_MAX = 9, ///< 最大美颜强度 -}; - - -/** - * 1.6 网络自适应算法,推荐选项:AUTO_ADJUST_LIVEPUSH_STRATEGY - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_AutoAdjustStrategy) { - AUTO_ADJUST_NONE = -1, ///< 非法数值,用于 SDK 内部做合法性检查 - - AUTO_ADJUST_LIVEPUSH_STRATEGY = 0, ///< 最适合直播模式下的流控算法 - AUTO_ADJUST_LIVEPUSH_RESOLUTION_STRATEGY = 1, ///< 不推荐:SDK 内部会调整视频分辨率,如果有 H5 分享的需求请勿使用 - AUTO_ADJUST_REALTIME_VIDEOCHAT_STRATEGY = 5, ///< 待废弃,请使用腾讯云 TRTC 服务 - - AUTO_ADJUST_BITRATE_STRATEGY_1 = 0, ///< 已经废弃 - AUTO_ADJUST_BITRATE_RESOLUTION_STRATEGY_1 = 1, ///< 已经废弃 - AUTO_ADJUST_BITRATE_STRATEGY_2 = 2, ///< 已经废弃 - AUTO_ADJUST_BITRATE_RESOLUTION_STRATEGY_2 = 3, ///< 已经废弃 - AUTO_ADJUST_REALTIME_BITRATE_STRATEGY = 4, ///< 已经废弃 - AUTO_ADJUST_REALTIME_BITRATE_RESOLUTION_STRATEGY = 5, ///< 已经废弃 -}; - -/** - * 1.7 视频帧的数据格式(未压缩前的) - */ -typedef NS_ENUM(NSInteger, TXVideoType) { - - VIDEO_TYPE_420SP = 1, ///< Android 视频采集格式,PixelFormat.YCbCr_420_SP 17 - VIDEO_TYPE_420YpCbCr = 2, ///< iOS 视频采集格式,kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange - VIDEO_TYPE_420P = 3, ///< yuv420p格式 - VIDEO_TYPE_BGRA8888 = 4, ///< BGRA8888 - VIDEO_TYPE_RGBA8888 = 5, ///< RGBA8888 - VIDEO_TYPE_NV12 = 6, ///< NV12(iOS) -}; - - -///////////////////////////////////////////////////////////////////////////////// -// -// 【音频相关枚举值定义】 -// -///////////////////////////////////////////////////////////////////////////////// - -/** - * 2.1 音频采样率 - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_AudioSampleRate) { - - AUDIO_SAMPLE_RATE_8000 = 0, ///< 8k采样率 - AUDIO_SAMPLE_RATE_16000 = 1, ///< 16k采样率 - AUDIO_SAMPLE_RATE_32000 = 2, ///< 32k采样率 - AUDIO_SAMPLE_RATE_44100 = 3, ///< 44.1k采样率 - AUDIO_SAMPLE_RATE_48000 = 4, ///< 48k采样率 -}; - -/** - * 2.2 混响类型 - */ -typedef NS_ENUM(NSInteger, TXReverbType) { - REVERB_TYPE_0 = 0, ///< 关闭混响 - REVERB_TYPE_1 = 1, ///< KTV - REVERB_TYPE_2 = 2, ///< 小房间 - REVERB_TYPE_3 = 3, ///< 大会堂 - REVERB_TYPE_4 = 4, ///< 低沉 - REVERB_TYPE_5 = 5, ///< 洪亮 - REVERB_TYPE_6 = 6, ///< 金属声 - REVERB_TYPE_7 = 7, ///< 磁性 -}; - -/** - * 2.3 变声选项 - */ -typedef NS_ENUM(NSInteger, TXVoiceChangerType) { - - VOICECHANGER_TYPE_0 = 0, ///< 关闭变声 - VOICECHANGER_TYPE_1 = 1, ///< 熊孩子 - VOICECHANGER_TYPE_2 = 2, ///< 萝莉 - VOICECHANGER_TYPE_3 = 3, ///< 大叔 - VOICECHANGER_TYPE_4 = 4, ///< 重金属 - VOICECHANGER_TYPE_5 = 5, ///< 感冒 - VOICECHANGER_TYPE_6 = 6, ///< 外国人 - VOICECHANGER_TYPE_7 = 7, ///< 困兽 - VOICECHANGER_TYPE_8 = 8, ///< 死肥仔 - VOICECHANGER_TYPE_9 = 9, ///< 强电流 - VOICECHANGER_TYPE_10 = 10, ///< 重机械 - VOICECHANGER_TYPE_11 = 11, ///< 空灵 -}; - -/** - * 2.4 声音播放模式(音频路由) - * - * 一般手机都有两个扬声器,设置音频路由的作用就是要决定声音从哪个扬声器播放出来。 - * - Speakerphone:扬声器,位于手机底部,声音偏大,适合外放音乐。 - * - Earpiece:听筒,位于手机顶部,声音偏小,适合通话。 - */ -typedef NS_ENUM(NSInteger, TXAudioRouteType) { - AUDIO_ROUTE_SPEAKER = 0, ///< 扬声器,位于手机底部,声音偏大,适合外放音乐。 - AUDIO_ROUTE_RECEIVER = 1, ///< 听筒,位于手机顶部,声音偏小,适合通话。 -}; - -/** - * 2.5 推流用网络通道(待废弃) - */ -typedef NS_ENUM(NSInteger, TX_Enum_Type_RTMPChannel) { - - RTMP_CHANNEL_TYPE_AUTO = 0, ///< 自动:推腾讯云使用加速协议,推友商云使用标准 RTMP 协议。 - RTMP_CHANNEL_TYPE_STANDARD = 1, ///< 标准 RTMP 协议 - RTMP_CHANNEL_TYPE_PRIVATE = 2, ///< 腾讯云专属加速协议 -}; - - -/** - * 2.6 屏幕采集源(用于录屏推流) - */ -#if TARGET_OS_OSX -typedef NS_ENUM(NSInteger, TXCaptureVideoInputSource) { - TXCaptureVideoInputSourceCamera, - TXCaptureVideoInputSourceScreen, - TXCaptureVideoInputSourceWindow -}; -#endif - - - - -///////////////////////////////////////////////////////////////////////////////// -// -// 【状态通知字段名 onNetStatus】 -// -///////////////////////////////////////////////////////////////////////////////// - -/** - * TXLivePushListener 和 TXLivePlayListener 的 onNetStatus() 会以 2s 一次的时间间隔,定时通知网络状态和内部指标, - * 这些数值采用 key-value 的组织格式,其中 key 值的定义如下: - */ - -#define NET_STATUS_CPU_USAGE @"CPU_USAGE" ///> 进程 CPU 占用率 -#define NET_STATUS_CPU_USAGE_D @"CPU_USAGE_DEVICE" ///> 系统 CPU 占用率 - -#define NET_STATUS_VIDEO_WIDTH @"VIDEO_WIDTH" ///> 视频分辨率宽度 -#define NET_STATUS_VIDEO_HEIGHT @"VIDEO_HEIGHT" ///> 视频分辨率高度 -#define NET_STATUS_VIDEO_FPS @"VIDEO_FPS" ///> 视频帧率:也就是视频编码器每秒生产了多少帧画面。 -#define NET_STATUS_VIDEO_GOP @"VIDEO_GOP" ///> 关键帧间隔:即每两个关键帧(I帧)间隔时长,单位:秒。 -#define NET_STATUS_VIDEO_BITRATE @"VIDEO_BITRATE" ///> 视频码率:即视频编码器每秒生产了多少视频数据,单位:kbps。 -#define NET_STATUS_AUDIO_BITRATE @"AUDIO_BITRATE" ///> 音频码率:即音频编码器每秒生产了多少音频数据,单位:kbps。 -#define NET_STATUS_NET_SPEED @"NET_SPEED" ///> 传输速度:即每秒钟发送或接收了多少字节的数据。 - -#define NET_STATUS_VIDEO_CACHE @"VIDEO_CACHE" ///> TXLivePusher:主播端堆积的视频帧数;TXLivePlayer:播放端缓冲的视频总时长。 -#define NET_STATUS_AUDIO_CACHE @"AUDIO_CACHE" ///> TXLivePusher:主播端堆积的音频帧数;TXLivePlayer:播放端缓冲的音频总时长。 -#define NET_STATUS_VIDEO_DROP @"VIDEO_DROP" ///> TXLivePusher:主播端主动丢弃的视频帧数;TXLivePlayer: N/A。 -#define NET_STATUS_AUDIO_DROP @"AUDIO_DROP" ///> 暂未使用 - -#define NET_STATUS_V_DEC_CACHE_SIZE @"V_DEC_CACHE_SIZE" ///> TXLivePlayer:播放端解码器中缓存的视频帧数(Android 端硬解码时存在)。 -#define NET_STATUS_V_SUM_CACHE_SIZE @"V_SUM_CACHE_SIZE" ///> TXLivePlayer:播放端缓冲的总视频帧数,该数值越大,播放延迟越高。 -#define NET_STATUS_AV_PLAY_INTERVAL @"AV_PLAY_INTERVAL" ///> TXLivePlayer:音画同步错位时间(播放),单位 ms,此数值越小,音画同步越好。 -#define NET_STATUS_AV_RECV_INTERVAL @"AV_RECV_INTERVAL" ///> TXLivePlayer:音画同步错位时间(网络),单位 ms,此数值越小,音画同步越好。 -#define NET_STATUS_AUDIO_CACHE_THRESHOLD @"AUDIO_CACHE_THRESHOLD" ///> TXLivePlayer:音频缓冲时长阈值,缓冲超过该阈值后,播放器会开始调控延时。 - -#define NET_STATUS_AUDIO_INFO @"AUDIO_INFO" ///> 音频信息:包括采样率信息和声道数信息 -#define NET_STATUS_NET_JITTER @"NET_JITTER" ///> 网络抖动:数值越大表示抖动越大,网络越不稳定 -#define NET_STATUS_SERVER_IP @"SERVER_IP" ///> 连接的Server IP地址 - - -///////////////////////////////////////////////////////////////////////////////// -// -// 【事件通知字段名 onPushEvent onPlayEvent】 -// -///////////////////////////////////////////////////////////////////////////////// - - -/** - * 腾讯云 LiteAVSDK 通过 TXLivePushListener 中的 onPushEvent(),TXLivePlayListener 中的 onPlayEvent() 向您通知内部错误、警告和事件: - * - 错误:严重且不可恢复的错误,会中断 SDK 的正常逻辑。 - * - 警告:非致命性的提醒和警告,可以不理会。 - * - 事件:SDK 的流程和状态通知,比如开始推流,开始播放,等等。 - * - * 这些数值采用 key-value 的组织格式,其中 key 值的定义如下: - */ -#define EVT_MSG @"EVT_MSG" ///> 事件ID -#define EVT_TIME @"EVT_TIME" ///> 事件发生的UTC毫秒时间戳 -#define EVT_PARAM1 @"EVT_PARAM1" ///> 事件参数1 -#define EVT_PARAM2 @"EVT_PARAM2" ///> 事件参数2 -#define EVT_GET_MSG @"EVT_GET_MSG" ///> 消息内容,收到PLAY_EVT_GET_MESSAGE事件时,通过该字段获取消息内容 -#define EVT_PLAY_PROGRESS @"EVT_PLAY_PROGRESS" ///> 点播:视频播放进度 -#define EVT_PLAY_DURATION @"EVT_PLAY_DURATION" ///> 点播:视频总时长 -#define EVT_PLAYABLE_DURATION @"PLAYABLE_DURATION" ///> 点播:视频可播放时长 -#define EVT_PLAY_COVER_URL @"EVT_PLAY_COVER_URL" ///> 点播:视频封面 -#define EVT_PLAY_URL @"EVT_PLAY_URL" ///> 点播:视频播放地址 -#define EVT_PLAY_NAME @"EVT_PLAY_NAME" ///> 点播:视频名称 -#define EVT_PLAY_DESCRIPTION @"EVT_PLAY_DESCRIPTION" ///> 点播:视频简介 - -#define STREAM_ID @"STREAM_ID" - -#endif diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXPlayerAuthParams.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXPlayerAuthParams.h deleted file mode 100644 index 2f649689..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXPlayerAuthParams.h +++ /dev/null @@ -1,37 +0,0 @@ -// -// TXPlayerAuthParams.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/12/13. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#import - -/// 点播fileid鉴权信息 -@interface TXPlayerAuthParams : NSObject -///应用appId。必填 -@property int appId; -///文件id。必填 -@property NSString *fileId; -///加密链接超时时间戳,转换为16进制小写字符串,腾讯云 CDN 服务器会根据该时间判断该链接是否有效。可选 -@property NSString *timeout; -///试看时长,单位:秒。可选 -@property int exper; -///唯一标识请求,增加链接唯一性 -@property NSString *us; -/** - 无防盗链不填 - - 普通防盗链签名: - sign = md5(KEY+appId+fileId+t+us) - 带试看的防盗链签名: - sign = md5(KEY+appId+fileId+t+exper+us) - - 播放器API使用的防盗链参数(t, us, exper) 与CDN防盗链参数一致,只是sign计算方式不同 - 参考防盗链产品文档: https://cloud.tencent.com/document/product/266/11243 - */ -@property NSString *sign; -///是否用https请求,默认NO -@property BOOL https; -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVideoCustomProcessDelegate.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVideoCustomProcessDelegate.h deleted file mode 100644 index 98be4fab..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVideoCustomProcessDelegate.h +++ /dev/null @@ -1,51 +0,0 @@ -// -// TXVideoCustomProcessDelegate.h -// TXRTMPSDK -// -// Created by annidyfeng on 2017/3/20. -// -// - -#import -#if TARGET_OS_IPHONE -#include -#include -#elif TARGET_OS_MAC -#import -#import -#endif - -@protocol TXVideoCustomProcessDelegate -@optional -#pragma mark - Pusher & UGC Record -/** - * 在OpenGL线程中回调,在这里可以进行采集图像的二次处理 - * @param texture 纹理ID - * @param width 纹理的宽度 - * @param height 纹理的高度 - * @return 返回给SDK的纹理 - * 说明:SDK回调出来的纹理类型是GL_TEXTURE_2D,接口返回给SDK的纹理类型也必须是GL_TEXTURE_2D; 该回调在SDK美颜之后. 纹理格式为GL_RGBA - */ -- (GLuint)onPreProcessTexture:(GLuint)texture width:(CGFloat)width height:(CGFloat)height; - -/** - * 在OpenGL线程中回调,可以在这里释放创建的OpenGL资源 - */ -- (void)onTextureDestoryed; - -/** - * 人脸数据回调(增值版且启用了pitu模块才有效) - * @prama points 人脸坐标 - * 说明:开启pitu模块必须是打开动效或大眼瘦脸。此回调在onPreProcessTexture:width:height:之前 - */ -- (void)onDetectFacePoints:(NSArray *)points; - -#pragma mark - Player -/** - * 视频渲染对象回调 - * @param pixelBuffer 渲染图像 - * @return 返回YES则SDK不再显示;返回NO则SDK渲染模块继续渲染 - * 说明:渲染图像的数据类型为config中设置的renderPixelFormatType - */ -- (BOOL)onPlayerPixelBuffer:(CVPixelBufferRef)pixelBuffer; -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodDownloadManager.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodDownloadManager.h deleted file mode 100644 index f6a68fee..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodDownloadManager.h +++ /dev/null @@ -1,168 +0,0 @@ -// -// TXVodDownloadManager.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/12/25. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#import -#import "TXPlayerAuthParams.h" - -/** - * 下载视频的清晰度 - */ -typedef NS_ENUM(NSInteger, TXVodQuality) { - ///原画 - TXVodQualityOD = 0, - ///流畅 - TXVodQualityFLU, - ///标清 - TXVodQualitySD, - ///高清 - TXVodQualityHD, - ///全高清 - TXVodQualityFHD, - ///2K - TXVodQuality2K, - ///4K - TXVodQuality4K, -}; - -/** - * 下载错误码 - */ -typedef NS_ENUM(NSInteger, TXDownloadError) { - /// 下载成功 - TXDownloadSuccess = 0, - /// fileid鉴权失败 - TXDownloadAuthFaild = -5001, - /// 无此清晰度文件 - TXDownloadNoFile = -5003, - /// 格式不支持 - TXDownloadFormatError = -5004, - /// 网络断开 - TXDownloadDisconnet = -5005, - /// 获取HLS解密key失败 - TXDownloadHlsKeyError = -5006, - /// 下载目录访问失败 - TXDownloadPathError = -5007, -}; - -/** - * 下载源,通过fileid方式下载 - */ -@interface TXVodDownloadDataSource : NSObject -/// fileid信息 -@property TXPlayerAuthParams *auth; -/// 下载清晰度,默认原画 -@property TXVodQuality quality; -/// 如地址有加密,请填写token -@property NSString *token; -/// 清晰度模板。如果后台转码是自定义模板,请在这里填写模板名。templateName和quality同时设置时,以templateName为v准 -@property NSString *templateName; -@end - -/// 下载文件对象 -@interface TXVodDownloadMediaInfo : NSObject -/// fileid下载对象(可选) -@property TXVodDownloadDataSource *dataSource; -/// 下载地址 -@property NSString *url; -///时长 -@property (nonatomic) int duration; -/// 文件总大小,单位:byte -@property (nonatomic) int size; -/// 已下载大小,单位:byte -@property (nonatomic) int downloadSize; -/// 进度 -@property float progress; -/// 播放路径,可传给TXVodPlayer播放 -@property NSString *playPath; -/// 下载速度,byte每秒 -@property int speed; -@end - -/// 下载回调 -@protocol TXVodDownloadDelegate -/// 下载开始 -- (void)onDownloadStart:(TXVodDownloadMediaInfo *)mediaInfo; -/// 下载进度 -- (void)onDownloadProgress:(TXVodDownloadMediaInfo *)mediaInfo; -/// 下载停止 -- (void)onDownloadStop:(TXVodDownloadMediaInfo *)mediaInfo; -/// 下载完成 -- (void)onDownloadFinish:(TXVodDownloadMediaInfo *)mediaInfo; -/// 下载错误 -- (void)onDownloadError:(TXVodDownloadMediaInfo *)mediaInfo errorCode:(TXDownloadError)code errorMsg:(NSString *)msg; -/** - * 下载HLS,遇到加密的文件,将解密key给外部校验 - * @param mediaInfo 下载对象 - * @param url Url地址 - * @param data 服务器返回 - * @return 0:校验正确,继续下载;否则校验失败,抛出下载错误(SDK 获取失败) - */ -- (int)hlsKeyVerify:(TXVodDownloadMediaInfo *)mediaInfo url:(NSString *)url data:(NSData *)data; -@end - -/// 下载管理器 -@interface TXVodDownloadManager : NSObject - -/** - * 下载任务回调 - */ -@property (weak) id delegate; - -/** - * 设置 HTTP 头 - */ -@property NSDictionary *headers; - -/** - * 全局单例接口 - */ -+ (TXVodDownloadManager *)shareInstance; - -/** - * 设置下载文件的根目录。 - * - * @param path 目录地址,如不存在,将自动创建 - * @warning 开始下载前必须设置,否则不能下载 - */ -- (void)setDownloadPath:(NSString *)path; - -/** - * 下载文件 - * - * @param source 下载源。 - * @return 成功返回下载对象,否则nil - * - * @warning 目前只支持hls下载 - */ -- (TXVodDownloadMediaInfo *)startDownload:(TXVodDownloadDataSource *)source; - -/** - * 下载文件 - * - * @param url 下载地址 - * @return 成功返回下载对象,否则nil - * - * @warning 目前只支持hls下载,不支持master playlist - */ -- (TXVodDownloadMediaInfo *)startDownloadUrl:(NSString *)url; - -/** - * 停止下载 - * - * @param media 停止下载对象 - */ -- (void)stopDownload:(TXVodDownloadMediaInfo *)media; - -/** - * 删除下载产生的文件 - * - * @return 文件正在下载将无法删除,返回NO - */ -- (BOOL)deleteDownloadFile:(NSString *)playPath; - -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayConfig.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayConfig.h deleted file mode 100644 index e91255ad..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayConfig.h +++ /dev/null @@ -1,69 +0,0 @@ -// -// TXVodPlayConfig.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/9/12. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#ifndef TXVodPlayConfig_h -#define TXVodPlayConfig_h - -#import - -/// 播放器选择 -typedef NS_ENUM(NSInteger, TX_Enum_PlayerType) { - PLAYER_FFPLAY = 0, //基于FFmepg,支持软解,兼容性更好 - PLAYER_AVPLAYER = 1, //基于系统播放器 -}; - -/// 播放器配置参数 -@interface TXVodPlayConfig : NSObject - -/// 播放器连接重试次数:最小值为1,最大值为10,默认值为 3 -@property(nonatomic, assign) int connectRetryCount; - -/// 播放器连接重试间隔:单位秒,最小值为3, 最大值为30,默认值为3 -@property(nonatomic, assign) int connectRetryInterval; - -/// 超时时间:单位秒,默认10s -@property NSTimeInterval timeout; - -/// 视频渲染对象回调的视频格式。支持kCVPixelFormatType_32BGRA、kCVPixelFormatType_420YpCbCr8BiPlanarFullRange、kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange -@property(nonatomic, assign) OSType playerPixelFormatType; - -/** - * 注意:缓存目录应该是单独的目录,SDK可能会清掉其中的文件 - */ -@property NSString *cacheFolderPath; ///< 视频缓存目录,点播MP4、HLS有效 - -@property int maxCacheItems; ///< 最多缓存文件个数 - -@property NSInteger playerType; ///< 播放器类型 - -@property NSDictionary *headers; ///< 自定义 HTTP Headers - -@property BOOL enableAccurateSeek; ///< 是否精确 seek,默认YES。开启精确后seek,seek 的时间平均多出200ms - -@property BOOL autoRotate; ///< 播放 MP4 文件时,若设为YES则根据文件中的旋转角度自动旋转。旋转角度可在 EVT_VIDEO_CHANGE_ROTATION 事件中获得。默认YES - -/** - * 平滑切换码率。默认NO - * 设为NO时,切换清晰度会有少许停顿,但文件打开速度会加快。设为YES,当IDR对齐时,平滑切换清晰度。 - */ -@property BOOL smoothSwitchBitrate; - -/** - * 设置进度回调间隔时间 - * 若不设置,SDK默认间隔0.5秒回调一次 - */ -@property NSTimeInterval progressInterval; - -/** - * 最大预加载大小,单位 MB - * 此设置会影响playableDuration,设置越大,提前缓存的越多 - */ -@property int maxBufferSize; -@end - -#endif /* TXVodPlayConfig_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayListener.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayListener.h deleted file mode 100644 index b722843a..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayListener.h +++ /dev/null @@ -1,38 +0,0 @@ -// -// TXLiveVodListener.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/11/14. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#ifndef TXLiveVodListener_h -#define TXLiveVodListener_h -#import -#import "TXLiveSDKTypeDef.h" -@class TXVodPlayer; - -/// 点播通知 -@protocol TXVodPlayListener - -/** - * 点播事件通知 - * - * @param player 点播对象 - * @param EvtID 参见TXLiveSDKTypeDef.h - * @param param 参见TXLiveSDKTypeDef.h - * @see TXVodPlayer - */ --(void) onPlayEvent:(TXVodPlayer *)player event:(int)EvtID withParam:(NSDictionary*)param; - -/** - * 网络状态通知 - * - * @param player 点播对象 - * @param param 参见TXLiveSDKTypeDef.h - * @see TXVodPlayer - */ --(void) onNetStatus:(TXVodPlayer *)player withParam:(NSDictionary*)param; - -@end -#endif /* TXLiveVodListener_h */ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayer.h b/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayer.h deleted file mode 100644 index ab0d1915..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Headers/TXVodPlayer.h +++ /dev/null @@ -1,205 +0,0 @@ -// -// TXVodPlayer.h -// TXLiteAVSDK -// -// Created by annidyfeng on 2017/9/12. -// Copyright © 2017年 Tencent. All rights reserved. -// - -#import -#import -#import "TXLivePlayListener.h" -#import "TXVodPlayListener.h" -#import "TXVodPlayConfig.h" -#import "TXVideoCustomProcessDelegate.h" -#import "TXBitrateItem.h" -#import "TXPlayerAuthParams.h" - -/// 点播播放器 -@interface TXVodPlayer : NSObject - -/** - * 事件回调 - * @warning 建议使用vodDelegate - */ -@property(nonatomic, weak) id delegate __attribute__((deprecated("use vodDelegate instead"))); - -/// 事件回调 -@property(nonatomic, weak) id vodDelegate; - -/** - * 视频渲染回调。(仅硬解支持) - */ -@property(nonatomic, weak) id videoProcessDelegate; - -/** - * 是否开启硬件加速 - * 播放前设置有效 - */ -@property(nonatomic, assign) BOOL enableHWAcceleration; - -/** - * 点播配置 - */ -@property(nonatomic, copy) TXVodPlayConfig *config; - -/// startPlay后是否立即播放,默认YES -@property BOOL isAutoPlay; - -/** - * 加密HLS的token。设置此值后,播放器自动在URL中的文件名之前增加 voddrm.token.TOKEN - */ -@property (nonatomic, strong) NSString *token; - -/* setupContainView 创建Video渲染View,该控件承载着视频内容的展示。 - * @param view 父view - * @param idx Widget在父view上的层级位置 - */ -- (void)setupVideoWidget:(UIView *)view insertIndex:(unsigned int)idx; - -/** - * 移除Video渲染View - */ -- (void)removeVideoWidget; - -/** - * 设置播放开始时间 - * 在startPlay前设置,修改开始播放的起始位置 - */ -- (void)setStartTime:(CGFloat)startTime; - -/** - * startPlay 启动从指定URL播放 - * - * @param url 完整的URL(如果播放的是本地视频文件,这里传本地视频文件的完整路径) - * @return 0 = OK - */ -- (int)startPlay:(NSString *)url; - -/** - * 通过fileid方式播放。 - * - * fileid的获取方式可参考 [启动播放](https://cloud.tencent.com/document/product/454/12148#step-3.3A-.E5.90.AF.E5.8A.A8.E6.92.AD.E6.94.BE) - * - * @param params 认证参数 - * @return 0 = OK - */ -- (int)startPlayWithParams:(TXPlayerAuthParams *)params; - -/** - * 停止播放音视频流 - * @return 0 = OK - */ -- (int)stopPlay; - -/** - * 是否正在播放 - */ -- (bool)isPlaying; - -/** - * 暂停播放 - */ -- (void)pause; - -/** - * 继续播放 - */ -- (void)resume; - -/** - * 播放跳转到音视频流某个时间 - * @param time 流时间,单位为秒 - * @return 0 = OK - */ -- (int)seek:(float)time; - -/** - * 获取当前播放时间 - */ -- (float)currentPlaybackTime; - -/** - * 获取视频总时长 - */ -- (float)duration; - -/** - * 可播放时长 - */ -- (float)playableDuration; - -/** - * 视频宽度 - */ -- (int)width; - -/** - * 视频高度 - */ -- (int)height; - -/** - * 设置画面的方向 - * @param rotation 方向 - * @see TX_Enum_Type_HomeOrientation - */ -- (void)setRenderRotation:(TX_Enum_Type_HomeOrientation)rotation; - -/** - * 设置画面的裁剪模式 - * @param renderMode 裁剪 - * @see TX_Enum_Type_RenderMode - */ -- (void)setRenderMode:(TX_Enum_Type_RenderMode)renderMode; - - -/** - * 设置静音 - */ -- (void)setMute:(BOOL)bEnable; - -/* - * 截屏 - * @param snapshotCompletionBlock 通过回调返回当前图像 - */ -- (void)snapshot:(void (^)(UIImage *))snapshotCompletionBlock; - -/** - * 设置播放速率 - * @param rate 正常速度为1.0;小于为慢速;大于为快速。最大建议不超过2.0 - */ -- (void)setRate:(float)rate; - -/** - * 当播放地址为master playlist,返回支持的码率(清晰度) - * - * @warning 在收到EVT_VIDEO_PLAY_BEGIN事件后才能正确返回结果 - * @return 无多码率返回空数组 - */ -- (NSArray *)supportedBitrates; - -/** - * 获取当前正在播放的码率索引 - */ -- (NSInteger)bitrateIndex; - -/** - * 设置当前正在播放的码率索引,无缝切换清晰度 - * 清晰度切换可能需要等待一小段时间。腾讯云支持多码率HLS分片对齐,保证最佳体验。 - * - * @param index 码率索引 - */ -- (void)setBitrateIndex:(NSInteger)index; - -/** - * 设置画面镜像 - */ -- (void)setMirror:(BOOL)isMirror; - -/** - * 是否循环播放 - */ -@property (nonatomic, assign) BOOL loop; - -@end diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Info.plist b/Frameworks/TXLiteAVSDK_Player.framework/Info.plist deleted file mode 100644 index cb631408..00000000 Binary files a/Frameworks/TXLiteAVSDK_Player.framework/Info.plist and /dev/null differ diff --git a/Frameworks/TXLiteAVSDK_Player.framework/Modules/module.modulemap b/Frameworks/TXLiteAVSDK_Player.framework/Modules/module.modulemap deleted file mode 100644 index e668621e..00000000 --- a/Frameworks/TXLiteAVSDK_Player.framework/Modules/module.modulemap +++ /dev/null @@ -1,4 +0,0 @@ -module TXLiteAVSDK_Player { - umbrella header "Headers/TXLiteAVSDK.h" - export * -} diff --git a/Frameworks/TXLiteAVSDK_Player.framework/TXLiteAVSDK_Player b/Frameworks/TXLiteAVSDK_Player.framework/TXLiteAVSDK_Player deleted file mode 100644 index 2990ccd3..00000000 Binary files a/Frameworks/TXLiteAVSDK_Player.framework/TXLiteAVSDK_Player and /dev/null differ diff --git a/SuperPlayer.podspec b/SuperPlayer.podspec index 32855329..7842c61b 100644 --- a/SuperPlayer.podspec +++ b/SuperPlayer.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |spec| spec.name = 'SuperPlayer' - spec.version = '3.1.2' + spec.version = '3.1.3' spec.license = { :type => 'MIT' } spec.homepage = 'https://cloud.tencent.com/product/player' spec.authors = { 'annidyfeng' => 'annidyfeng@tencent.com' } @@ -32,9 +32,9 @@ Pod::Spec.new do |spec| s.private_header_files = 'SuperPlayer/Utils/TXBitrateItemHelper.h', 'SuperPlayer/Views/SuperPlayerView+Private.h' s.resource = 'SuperPlayer/Resource/*' #如果要使用cocopods管理的TXLiteAVSDK_Player,就不注释这一行 -# s.dependency 'TXLiteAVSDK_Player', '= 5.3.6001' + s.dependency 'TXLiteAVSDK_Player', '= 6.7.7758' #如果要使用最新的TXLiteAVSDK_Player,就不注释这一行 - s.vendored_framework = "Frameworks/TXLiteAVSDK_Player.framework" + #s.vendored_framework = "Frameworks/TXLiteAVSDK_Player.framework" end # spec.subspec "Professional" do |s| # s.dependency 'SuperPlayer/Core'