![]() |
AliyunPlayer v7.10.0
Aliyun Player API Reference Manual for iOS Platforms
|
#include "AliListPlayer.h"
Instance Methods | |
| (void) | - addUrlSource:uid: |
| 添加资源到播放列表中 | |
| (void) | - addUrlSource:uid:config: |
| 添加资源到播放列表中 | |
| (void) | - addVidSource:uid: |
| 添加资源到播放列表中 | |
| (void) | - clear |
| 清除播放列表 | |
| (NSString *) | - currentUid |
| 获取当前播放资源的uid | |
| (void) | - destroy |
| 同步销毁播放器 | |
| (void) | - destroyAsync |
| 异步销毁播放器。当实例不再需要时,省去stop的调用并使用destroyAsync进行异步释放,可以加快页面响应速度,提高体验,释放后不要再调用prepare进行新的起播,否则调用效果不可预知。 | |
| (void) | - enableStrategy:enable: |
| 启用预加载策略。 | |
| (AliPlayer *) | - getCurrentPlayer |
| 获取当前的播放器实例。 | |
| (AVPMultiBitratesMode) | - GetMultiBiratesMode |
| 获取当前多码率HLS流预加载模式 | |
| (AliPlayer *) | - getPreRenderPlayer |
| 获取预渲染的播放器实例。listPlayer在播放当前视频时,会去预渲染下一个视频,用户可以用该预渲染的实例去提前播放下一个视频 | |
| (instancetype) | - init |
| 初始化播放列表 | |
| (instancetype) | - init: |
| 初始化播放器 | |
| (BOOL) | - moveTo: |
| 移动到指定位置开始准备播放,url播放方式 | |
| (BOOL) | - moveTo:accId:accKey:token:region: |
| 移动到指定位置开始准备播放,sts播放方式,需要更新sts信息 | |
| (BOOL) | - moveTo:playAuth: |
| 移动到指定位置开始准备播放,playauth播放方式,需要更新playauth信息 | |
| (BOOL) | - moveToNext |
| 当前位置移动到下一个进行准备播放,url播放方式 | |
| (BOOL) | - moveToNext: |
| 当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息 | |
| (BOOL) | - moveToNext:accKey:token:region: |
| 当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息 | |
| (BOOL) | - moveToNextWithPrerendered |
| 当前位置移动到下一个进行准备播放,url播放方式. | |
| (BOOL) | - moveToNextWithPrerendered: |
| 当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息. | |
| (BOOL) | - moveToNextWithPrerendered:accKey:token:region: |
| 当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息. | |
| (BOOL) | - moveToPre |
| 当前位置移动到上一个进行准备播放,url播放方式 | |
| (BOOL) | - moveToPre: |
| 当前位置移动到上一个进行准备播放,playauth播放方式,需要更新playauth信息 | |
| (BOOL) | - moveToPre:accKey:token:region: |
| 当前位置移动到上一个进行准备播放,sts播放方式,需要更新sts信息 | |
| (void) | - removeSource: |
| 从播放列表中删除指定资源 | |
| (void) | - SetMultiBitratesMode: |
| 设置多码率HLS流预加载模式 | |
| (void) | - setOption:valueInt: |
| 设置播放器特定功能选项(整数值) | |
| (void) | - setPreloadCount:nextCount: |
| 设置预加载数量 | |
| (void) | - setScene: |
| 设置预加载场景。 | |
| (void) | - setStrategyParam:strategyParam: |
| 设置策略参数。 | |
| (void) | - stop |
| 停止播放 | |
| (void) | - updatePreloadConfig: |
| 更新uid相关的预加载配置 | |
| (void) | - updatePreloadConfiguid:config: |
| 更新预加载配置 | |
| Instance Methods inherited from AliPlayer | |
| (void) | - addExtSubtitle: |
| 添加外挂字幕文件 | |
| (void) | - clearScreen |
| 清空画面。 | |
| (void) | - clearScreenSync |
| 同步清空画面,建议使用clearScreen。 | |
| (void) | - enableDowngrade:config: |
| 播放器降级设置, 适用于RTS自定义降级url设置,详细可以参考RTS自定义降级url设置 | |
| (NSString *) | - getCacheFilePath: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onGetCacheNameByURL。 | |
| (NSString *) | - getCacheFilePath:format:definition: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback。 | |
| (NSString *) | - getCacheFilePath:format:definition:previewTime: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback。 | |
| (AVPConfig *) | - getConfig |
| 获取播放器配置 | |
| (AVPTrackInfo *) | - getCurrentTrack: |
| 获取当前播放track | |
| (AVPMediaInfo *) | - getMediaInfo |
| 获取媒体信息 | |
| (NSString *) | - getOption: |
| 获取播放器选项参数 | |
| (int64_t) | - getPlayedDuration |
| 获取已播放时长 | |
| (void *) | - getPlayer |
| (NSString *) | - getPlayerName |
| 获取播放时使用的播放器名字 | |
| (NSString *) | - getPropertyString: |
| 获取播放器属性信息 | |
| (AVPMediaInfo *) | - getSubMediaInfo |
| 获取子流媒体信息 | |
| (void) | - getThumbnail: |
| 获取指定位置的缩略图 | |
| (NSString *) | - getUserData |
| 获取播放器实例的用户数据 | |
| (int) | - invokeComponent: |
| 向播放器的组件发送命令。 | |
| (BOOL) | - isAutoBandWidth |
| 查询多码率自适应选择起播清晰度功能状态 | |
| (BOOL) | - isEnableSubtitleRender |
| 查询字幕渲染是否启用 | |
| (void) | - pause |
| 暂停播放 暂停当前的播放。状态变化通过 AVPDelegate::onPlayerStatusChanged 回调通知。 若播放器已处于暂停或停止状态,则此调用无效。 要恢复播放,请调用 start 方法。 | |
| (void) | - prepare |
播放准备,异步 初始化媒体资源,建立网络连接,加载媒体信息。准备完成后通过 AVPEventType::AVPEventPrepareDone 事件通知,或通过 AVPDelegate::onPlayerStatusChanged 回调获取准备完成状态。 准备到准备完成的时间与AVPConfig::startBufferDuration有关 | |
| (void) | - redraw |
| 刷新view,例如view size变化时。 | |
| (void) | - reload |
| 重新加载。比如网络超时时,可以重新加载。 | |
| (void) | - reset |
| 重置播放 | |
| (void) | - seekToTime:seekMode: |
| 跳转到指定的播放位置 | |
| (void) | - selectExtSubtitle:enable: |
| 选择或关闭外挂字幕轨道 | |
| (void) | - selectTrack: |
| 根据轨道索引切换视频清晰度。支持手动指定清晰度或开启自适应码率模式。 | |
| (void) | - selectTrack:accurate: |
| 根据轨道索引切换视频清晰度,支持精准跳转选项。 | |
| (void) | - sendCustomEvent: |
| 发送自定义埋点事件 | |
| (void) | - setAuthSource: |
| 使用vid+playauth方式播放。可参考:https://help.aliyun.com/document_detail/57294.html 通过阿里云视频ID和播放鉴权令牌进行身份验证后播放。 这是阿里云推荐的认证方式,可应用于大多数场景。 | |
| (void) | - setAutoBandWidth: |
| 设置多码率自适应选择起播清晰度 | |
| (void) | - setBitStreamSource: |
| 使用bitstream方式来播放视频 | |
| (BOOL) | - setCacheConfig: |
| 设置缓存配置 | |
| (void) | - setConfig: |
| 设置播放器配置 | |
| (void) | - setDefaultBandWidth: |
| 设置多码率播放时的默认起播码率 | |
| (void) | - setDefaultResolution: |
| 设置多码率播放时的默认起播清晰度 | |
| (void) | - setEnableSubtitleRender: |
| 是否关闭字幕渲染 | |
| (void) | - setEventReportParamsDelegate: |
| 设置事件上报代理 | |
| (void) | - setFilterConfig: |
| 设置滤镜配置 | |
| (void) | - setFilterInvalid:invalid: |
| 启用或禁用滤镜 | |
| (void) | - setLiveStsSource: |
| 使用LiveSts 方式播放直播流 通过临时安全令牌进行身份验证后播放加密直播流。 适用于需要权限控制和加密的直播场景。 | |
| (void) | - setMaxAccurateSeekDelta: |
| 设置精确Seek的最大间隔 | |
| (void) | - setMpsSource: |
| 用vid和MPS信息来播放视频。可参考:https://help.aliyun.com/document_detail/53522.html | |
| (void) | - setOnURLSourceExpiredCallback: |
| 设置 URL 源过期通知的回调。 | |
| (void) | - setOnVidAuthExpiredCallback: |
| 设置 VidAuth 源过期通知的回调。 | |
| (void) | - setOption:value: |
| 设置播放器特定功能选项(字符串值) | |
| (void) | - setPictureinPictureDelegate: |
| 为画中画功能设置代理 | |
| (void) | - setPictureInPictureEnable: |
| 启用或禁用画中画功能 | |
| (void) | - setPictureInPictureShowMode: |
| 为画中画功能设置显示模式 | |
| (void) | - setPlayerScene: |
| 设置播放场景 | |
| (void) | - setPlayUrlConvertCallback: |
| 设置转换播放的url的回调函数,一般用于p2p中的url地址转换 | |
| (void) | - setPreferPlayerName: |
| 设置首选播放器内核 | |
| (void) | - setStartTime:seekMode: |
| 设置起播位置 | |
| (void) | - setStreamDelayTime:time: |
| 设置某路流相对于主时钟的延时时间,默认是0, 目前只支持外挂字幕 | |
| (void) | - setStsSource: |
| 用vid和sts来播放视频,sts可参考:https://help.aliyun.com/document_detail/28756.html 通过阿里云视频ID和临时安全令牌进行身份验证和授权后播放。 适用于需要权限控制的视频播放场景。 | |
| (void) | - setThumbnailUrl: |
| 设置缩略图URL | |
| (void) | - setTraceID: |
| 设置追踪ID | |
| (void) | - setUrlSource: |
| 使用url方式来播放视频 设置播放源为URL地址。支持HTTP、HTTPS等协议的直播和点播流。 | |
| (void) | - setUserData: |
| 设置播放器实例的用户数据 | |
| (void) | - setVerifyStsCallback: |
| 设置直播STS有效性监听回调 | |
| (void) | - setVideoTag:size: |
| 设置视频标签。值范围[0,99]。 | |
| (void) | - snapShot |
| 截取当前画面 | |
| (void) | - start |
| 开始播放 在调用此方法前,必须先调用 prepare 方法准备。 状态变化通过 AVPDelegate::onPlayerStatusChanged 回调通知。 若播放器已处于播放状态,则此调用无效。 | |
| (void) | - switchStream: |
| 根据url进行多清晰度切换,选择成功与否的结果通过AVPDelegate onStreamSwitchedSuccess/onStreamSwitchedFail回调。 注意: | |
| (void) | - updateFilterConfig:options: |
| 更新滤镜配置 | |
| (void) | - updateLiveStsInfo:accKey:token:region: |
| 更新LiveStsInfo | |
Properties | |
| int | maxPreloadMemorySizeMB |
| 设置最大的预缓存的内存大小,默认100M,最小20M | |
| NSString * | playAuthPreloadDefinition |
| int | preloadCount |
| 获取/设置预加载的个数,当前位置的前preloadCount和后preloadCount,默认preloadCount = 2 | |
| NSString * | stsPreloadDefinition |
| 获取/设置列表播放的sts播放方式,指定默认的清晰度,如"LD、HD"等,moveTo之前调用,一旦预加载后不能更改 | |
| Properties inherited from AliPlayer | |
| id< CicadaRenderDelegate > renderDelegate | __deprecated |
| 设置渲染回调。废弃,使用renderingDelegate。 | |
| AVPAlphaRenderMode | alphaRenderMode |
| 设置透明渲染模式,支持如直播礼物播放等场景。详细用法参考:doc | |
| BOOL | autoPlay |
| 设置是否自动播放,启用后,准备完成会自动开始播放,支持KVO | |
| int64_t | bufferedPosition |
| 已缓冲位置 | |
| int64_t | currentDownloadSpeed |
| 当前网络下载速度 | |
| int64_t | currentPosition |
| 当前播放位置 | |
| int64_t | currentUtcTime |
| 获取当前播放位置的utc时间,支持KVO | |
| id< AVPDelegate > | delegate |
| 播放器代理 | |
| id< AVPDrmDelegate > | drmDelegate |
| DRM代理 | |
| int64_t | duration |
| 播放时长 | |
| BOOL | enableHardwareDecoder |
| 硬件解码启用状态 | |
| id< AVPEventReportParamsDelegate > | eventReportParamsDelegate |
| 设置埋点事件回调。 | |
| int | height |
| 获取视频的高度,支持KVO | |
| int64_t | localCacheLoadedSize |
| 本地缓存命中大小 | |
| BOOL | loop |
| 设置是否循环播放,支持KVO | |
| AVPMirrorMode | mirrorMode |
| 渲染镜像模式,支持KVO | |
| BOOL | muted |
| 初始化播放器组件 | |
| AVPOutputAudioChannel | outputAudioChannel |
| 设置输出声道,若输入源是双声道,则支持切换为左声道、右声道;若输入源是单声道,则设置无效。该设置会同时影响音频渲染及PCM数据回调 | |
| AVPStatus | playerStatus |
| 播放器状态 | |
| AVPView * | playerView |
| 设置播放器的视图playerView AVPView: mac下为NSOpenGLView,iOS下为UIView | |
| float | rate |
| 播放速率,1为正常播放,支持KVO | |
| id< CicadaRenderingDelegate > | renderingDelegate |
| 视频渲染代理(新) | |
| AVPRotateMode | rotateMode |
| 渲染旋转模式,支持KVO | |
| int | rotation |
| 获取视频的旋转角度,从metadata中获取出来,支持KVO | |
| AVPScalingMode | scalingMode |
| 渲染填充模式,支持KVO | |
| float | volume |
| 获取/设置播放器的音量(非系统音量),支持KVO,范围0.0~2.0,当音量大于1.0时,可能出现噪音,不推荐使用。 | |
| int | width |
| 获取视频的宽度,支持KVO | |
Additional Inherited Members | |
| Class Methods inherited from AliPlayer | |
| (NSString *) | + getDeviceUUID |
| 获取设备UUID | |
| (NSString *) | + getSDKVersion |
| 获取SDK版本号信息 | |
| (BOOL) | + isFeatureSupport: |
| 查询功能支持情况 | |
| (void) | + netWorkReConnect |
| 重连所有网络连接,网络路由发生变化后,调用此接口,可以让播放器所有的连接切换到新的路由上去。 | |
| (void) | + setAudioSessionDelegate: |
| 设置AudioSession委托 | |
| (void) | + setEnableLog: |
| 启用或禁用日志输出 | |
| (void) | + setLogCallbackInfo:callbackBlock: |
| 设置日志打印回调block,异步 | |
| (void) | + setLogOption:value: |
| 设置日志选项 | |
| - (void) addUrlSource: | (NSString *) | url | |
| uid: | (NSString *) | uid |
添加资源到播放列表中
| url | url的播放方式 |
| uid | 该资源的uid,代表在列表中的唯一标识 |
| - (void) addUrlSource: | (NSString *) | urlSource | |
| uid: | (NSString *) | uid | |
| config: | (AVPPreloadConfig *) | config |
添加资源到播放列表中
| url | url的播放方式 |
| uid | 该资源的uid,代表在列表中的唯一标识 |
| config | 预加载配置 |
| - (void) addVidSource: | (NSString *) | vid | |
| uid: | (NSString *) | uid |
添加资源到播放列表中
| vid | vid的播放方式 |
| uid | 该资源的uid,代表在列表中的唯一标识 |
| - (void) clear |
清除播放列表
| - (NSString *) currentUid |
获取当前播放资源的uid
| - (void) destroy |
同步销毁播放器
Implements AliPlayer.
| - (void) destroyAsync |
异步销毁播放器。当实例不再需要时,省去stop的调用并使用destroyAsync进行异步释放,可以加快页面响应速度,提高体验,释放后不要再调用prepare进行新的起播,否则调用效果不可预知。
Implements AliPlayer.
| - (void) enableStrategy: | (AVPStrategyType) | type | |
| enable: | (bool) | enable |
启用预加载策略。
| type | 策略类型, 详见:AVPStrategyType |
| enable | 是否启用 |
| - (AliPlayer *) getCurrentPlayer |
获取当前的播放器实例。
| - (AVPMultiBitratesMode) GetMultiBiratesMode |
获取当前多码率HLS流预加载模式
| - (AliPlayer *) getPreRenderPlayer |
获取预渲染的播放器实例。listPlayer在播放当前视频时,会去预渲染下一个视频,用户可以用该预渲染的实例去提前播放下一个视频
| - (instancetype) init |
初始化播放列表
Implements AliPlayer.
| - (instancetype) init: | (NSString *) | traceID |
| - (BOOL) moveTo: | (NSString *) | uid |
移动到指定位置开始准备播放,url播放方式
| uid | 指定资源的uid,代表在列表中的唯一标识 |
| - (BOOL) moveTo: | (NSString *) | uid | |
| accId: | (NSString *) | accId | |
| accKey: | (NSString *) | accKey | |
| token: | (NSString *) | token | |
| region: | (NSString *) | region |
移动到指定位置开始准备播放,sts播放方式,需要更新sts信息
| uid | 指定资源的uid,代表在列表中的唯一标识 |
| accId | vid sts播放方式的accessKeyID |
| accKey | vid sts播放方式的accessKeySecret |
| token | vid sts播放方式的securtiToken |
| region | vid sts播放方式的region 默认cn-shanghai |
| - (BOOL) moveTo: | (NSString *) | uid | |
| playAuth: | (NSString *) | playAuth |
移动到指定位置开始准备播放,playauth播放方式,需要更新playauth信息
| uid | 指定资源的uid,代表在列表中的唯一标识 |
| playAuth | vid playauth播放方式的playAuth |
| - (BOOL) moveToNext |
当前位置移动到下一个进行准备播放,url播放方式
| - (BOOL) moveToNext: | (NSString *) | playAuth |
当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息
| playAuth | vid playauth播放方式的playAuth |
| - (BOOL) moveToNext: | (NSString *) | accId | |
| accKey: | (NSString *) | accKey | |
| token: | (NSString *) | token | |
| region: | (NSString *) | region |
当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息
| accId | vid sts播放方式的accessKeyID |
| accKey | vid sts播放方式的accessKeySecret |
| token | vid sts播放方式的securtiToken |
| region | vid sts播放方式的region 默认cn-shanghai |
| - (BOOL) moveToNextWithPrerendered |
当前位置移动到下一个进行准备播放,url播放方式.
该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放
| - (BOOL) moveToNextWithPrerendered: | (NSString *) | playAuth |
当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息.
该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放
| playAuth | vid playauth播放方式的playAuth |
| - (BOOL) moveToNextWithPrerendered: | (NSString *) | accId | |
| accKey: | (NSString *) | accKey | |
| token: | (NSString *) | token | |
| region: | (NSString *) | region |
当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息.
该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放
| accId | vid sts播放方式的accessKeyID |
| accKey | vid sts播放方式的accessKeySecret |
| token | vid sts播放方式的securtiToken |
| region | vid sts播放方式的region 默认cn-shanghai |
| preRendered | 是否使用了预渲染的player去播放,如果为true,则listPlayer内部不再去播放 |
| - (BOOL) moveToPre |
当前位置移动到上一个进行准备播放,url播放方式
| - (BOOL) moveToPre: | (NSString *) | playAuth |
当前位置移动到上一个进行准备播放,playauth播放方式,需要更新playauth信息
| playAuth | vid playauth播放方式的playAuth |
| - (BOOL) moveToPre: | (NSString *) | accId | |
| accKey: | (NSString *) | accKey | |
| token: | (NSString *) | token | |
| region: | (NSString *) | region |
当前位置移动到上一个进行准备播放,sts播放方式,需要更新sts信息
| accId | vid sts播放方式的accessKeyID |
| accKey | vid sts播放方式的accessKeySecret |
| token | vid sts播放方式的securtiToken |
| region | vid sts播放方式的region 默认cn-shanghai |
| - (void) removeSource: | (NSString *) | uid |
从播放列表中删除指定资源
| uid | 该资源的uid,代表在列表中的唯一标识 |
| - (void) SetMultiBitratesMode: | (AVPMultiBitratesMode) | mode |
设置多码率HLS流预加载模式
| mode为设置的预加载模式 |
| - (void) setOption: | (PlayerOption) | key | |
| valueInt: | (int) | value |
设置播放器特定功能选项(整数值)
为播放器设置特定功能的选项参数。某些选项接受整数类型的值。
| key | 选项关键字,指定要设置的选项类型 |
| value | 选项值的整数表示 |
Implements AliPlayer.
| - (void) setPreloadCount: | (int) | prevCount | |
| nextCount: | (int) | nextCount |
设置预加载数量
| prevCount | 之前的预加载数量 |
| nextCount | 后面的预加载数量 |
| - (void) setScene: | (AVPSceneType) | type |
设置预加载场景。
| type | 场景类型, 详见:AVPSceneType |
| - (void) setStrategyParam: | (AVPStrategyType) | type | |
| strategyParam: | (NSString *) | strategyParam |
设置策略参数。
| type | 策略类型,详见:AVPStrategyType |
| strategyParam | 策略参数,格式为json字符串 支持参数:algorithm, offset, scale 配置参数举例: 动态预加载时长递减策略 默认配置 { "algorithm":"sub", "offset":"500" } 转换成字符串为 "{\"algorithm\": \"div\",\"scale\": \"0.75\"}" 或者 { "algorithm":"div", "scale":"0.75" } |
| - (void) stop |
停止播放
停止当前的播放。状态变化通过 AVPDelegate::onPlayerStatusChanged 回调通知。 停止后播放器资源不会自动释放,需要调用 destroy 或 destroyAsync 方法。
Implements AliPlayer.
| - (void) updatePreloadConfig: | (AVPPreloadConfig *) | config |
更新uid相关的预加载配置
| uid | 每个url都是不一样的uid |
| config | 预加载配置,详见AVPPreloadConfig |
| - (void) updatePreloadConfiguid: | (NSString *) | uid | |
| config: | (AVPPreloadConfig *) | config |
更新预加载配置
| config | 预加载配置, 详情:AVPPreloadConfig |
|
readwritenonatomicassign |
设置最大的预缓存的内存大小,默认100M,最小20M
|
readwritenonatomiccopy |
|
readwritenonatomicassign |
获取/设置预加载的个数,当前位置的前preloadCount和后preloadCount,默认preloadCount = 2
|
readwritenonatomiccopy |
获取/设置列表播放的sts播放方式,指定默认的清晰度,如"LD、HD"等,moveTo之前调用,一旦预加载后不能更改