![]() |
AliyunPlayer v7.0.0
Aliyun Player API Reference Manual for iOS Platforms
|
#import "AliPlayer.h"
Instance Methods | |
(void) | - addExtSubtitle: |
添加外挂字幕。 More... | |
(void) | - clearScreen |
清空画面。 More... | |
(void) | - clearScreenSync |
同步清空画面。 More... | |
(void) | - destroy |
同步销毁播放器 More... | |
(void) | - destroyAsync |
异步销毁播放器。当实例不再需要时,省去stop的调用并使用destroyAsync进行异步释放,可以加快页面响应速度,提高体验,释放后不要再调用prepare进行新的起播,否则调用效果不可预知。 More... | |
(void) | - enableDowngrade:config: |
播放器降级设置 More... | |
(NSString *) | - getCacheFilePath: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onGetCacheNameByURL 。 More... | |
(NSString *) | - getCacheFilePath:format:definition: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback 。 More... | |
(NSString *) | - getCacheFilePath:format:definition:previewTime: |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback 。 More... | |
(AVPConfig *) | - getConfig |
获取播放器设置 More... | |
(AVPTrackInfo *) | - getCurrentTrack: |
获取当前播放track More... | |
(AVPMediaInfo *) | - getMediaInfo |
获取媒体信息,包括track信息 More... | |
(NSString *) | - getOption: |
获取播放器的参数 More... | |
(int64_t) | - getPlayedDuration |
@breif 获取当前播放时长,不受seek的影响 More... | |
(void *) | - getPlayer |
(NSString *) | - getPlayerName |
获取播放时使用的播放器名字 More... | |
(NSString *) | - getPropertyString: |
根据key获取相应的信息。 More... | |
(AVPMediaInfo *) | - getSubMediaInfo |
获取媒体子流信息,包括track信息 More... | |
(void) | - getThumbnail: |
获取指定位置的缩略图 More... | |
(NSString *) | - getUserData |
获取UserData,一个实例绑定一个。 More... | |
(instancetype) | - init |
初始化播放器 More... | |
(instancetype) | - init: |
初始化播放器 More... | |
(int) | - invokeComponent: |
向播放器的组件发送命令。 More... | |
(void) | - pause |
暂停播放 More... | |
(void) | - prepare |
播放准备,异步 More... | |
(void) | - redraw |
刷新view,例如view size变化时。 More... | |
(void) | - reload |
重新加载。比如网络超时时,可以重新加载。 More... | |
(void) | - reset |
重置播放 More... | |
(void) | - seekToTime:seekMode: |
跳转到指定的播放位置 More... | |
(void) | - selectExtSubtitle:enable: |
选择外挂字幕 More... | |
(void) | - selectTrack: |
根据trackIndex,切换清晰度 More... | |
(void) | - selectTrack:accurate: |
根据trackIndex,切换清晰度 More... | |
(void) | - sendCustomEvent: |
发送用户自定义事件,将通过AVPEventReportParamsDelegate回调。事件 e = 5001。 More... | |
(void) | - setAuthSource: |
使用vid+playauth方式播放。可参考:https://help.aliyun.com/document_detail/57294.html More... | |
(void) | - setBitStreamSource: |
使用bitstream方式来播放视频 More... | |
(BOOL) | - setCacheConfig: |
设置缓存配置 More... | |
(void) | - setConfig: |
播放器设置 More... | |
(void) | - setDefaultBandWidth: |
设置多码率时默认播放的码率。将会选择与之最接近的一路流播放。 More... | |
(void) | - setEventReportParamsDelegate: |
设置代理 参考AVPEventReportParamsDelegate More... | |
(void) | - setFilterConfig: |
设置滤镜配置。在prepare之前调用此方法。如果想更新,调用updateFilterConfig() More... | |
(void) | - setFilterInvalid:invalid: |
开启关闭滤镜. More... | |
(void) | - setLiveStsSource: |
使用LiveSts 方式播放直播流 More... | |
(void) | - setMaxAccurateSeekDelta: |
设置精准seek的最大间隔。 More... | |
(void) | - setMpsSource: |
用vid和MPS信息来播放视频。可参考:https://help.aliyun.com/document_detail/53522.html?spm=5176.doc53534.2.5.mhSfOh More... | |
(void) | - setOption:value: |
设置特定功能选项。 More... | |
(void) | - setOption:valueInt: |
设置特定功能选项。 More... | |
(void) | - setPictureinPictureDelegate: |
为画中画功能设置代理 More... | |
(void) | - setPictureInPictureEnable: |
设置画中画功能开启/关闭 (目前播放器自带的画中画功能需要iOS15以上的系统,如果其他系统,可以通过播放器CicadaRenderingDelegate返回的pixelbuffer来自定义实现) More... | |
(void) | - setPictureInPictureShowMode: |
为画中画功能设置显示模式 More... | |
(void) | - setPlayUrlConvertCallback: |
设置转换播放的url的回调函数,一般用于p2p中的url地址转换 More... | |
(void) | - setPreferPlayerName: |
设置期望使用的播放器名字。 More... | |
(void) | - setStartTime:seekMode: |
以指定位置起播,每次prepare前调用,仅生效一次。(用于代替原先的起播前seek的方案) More... | |
(void) | - setStreamDelayTime:time: |
设置某路流相对于主时钟的延时时间,默认是0, 目前只支持外挂字幕 More... | |
(void) | - setStsSource: |
用vid和sts来播放视频,sts可参考:https://help.aliyun.com/document_detail/28756.html?spm=a2c4g.11186623.4.4.6f554c07q7B7aS More... | |
(void) | - setThumbnailUrl: |
设置缩略图URL More... | |
(void) | - setTraceID: |
用于跟踪debug信息 More... | |
(void) | - setUrlSource: |
使用url方式来播放视频 More... | |
(void) | - setUserData: |
设置UserData,用于一些全局API的透传,以区分player实例。 More... | |
(void) | - setVerifyStsCallback: |
设置校验AVPStsInfo是否过期回调 More... | |
(void) | - setVideoTag:size: |
设置视频标签。值范围[0,99]。 More... | |
(void) | - snapShot |
截图 AVPImage: mac平台返回NSImage,iOS平台返回UIImage More... | |
(void) | - start |
开始播放 More... | |
(void) | - stop |
停止播放 More... | |
(void) | - switchStream: |
根据url进行多清晰度切换,选择成功与否的结果通过AVPDelegate onStreamSwitchedSuccess/onStreamSwitchedFail回调。 注意: More... | |
(void) | - updateFilterConfig:options: |
更新滤镜配置 More... | |
(void) | - updateLiveStsInfo:accKey:token:region: |
更新LiveSts信息 More... | |
Class Methods | |
(NSString *) | + getDeviceUUID |
获取设备UUID More... | |
(NSString *) | + getSDKVersion |
获取SDK版本号信息 More... | |
(void) | + initPlayerComponent:function: |
初始化播放器组件。这些组件是可裁剪的。App可删除相应动态库,去掉初始化组件代码,实现裁剪。 More... | |
(BOOL) | + isFeatureSupport: |
返回某项功能是否支持 More... | |
(void) | + netWorkReConnect |
重连所有网络连接,网络路由发生变化后,调用此接口,可以让播放器所有的连接切换到新的路由上去。 More... | |
(void) | + setAudioSessionDelegate: |
设置AudioSession的Delegate More... | |
(void) | + setEnableLog: |
是否打开log输出 More... | |
(void) | + setLogCallbackInfo:callbackBlock: |
设置日志打印回调block,异步 More... | |
(void) | + setLogOption:value: |
设置日志打印选项 More... | |
Properties | |
id< CicadaRenderDelegate > renderDelegate | __deprecated |
设置渲染回调。废弃,使用renderingDelegate。 More... | |
AVPAlphaRenderMode | alphaRenderMode |
Alpha渲染模式,支持alpha在右侧、左侧、上侧、下侧,默认值无 More... | |
BOOL | autoPlay |
设置是否自动播放,支持KVO More... | |
int64_t | bufferedPosition |
获取已经缓存的位置,支持KVO More... | |
int64_t | currentDownloadSpeed |
获取当前下载速度,支持KVO More... | |
int64_t | currentPosition |
获取当前播放位置,支持KVO More... | |
int64_t | currentUtcTime |
获取当前播放位置的utc时间,支持KVO More... | |
id< AVPDelegate > | delegate |
设置代理,参考AVPDelegate More... | |
int64_t | duration |
获取视频的长度,支持KVO More... | |
BOOL | enableHardwareDecoder |
是否开启硬件解码,支持KVO More... | |
id< AVPEventReportParamsDelegate > | eventReportParamsDelegate |
设置埋点事件回调。 More... | |
int | height |
获取视频的高度,支持KVO More... | |
int64_t | localCacheLoadedSize |
获取当前播放命中的缓存文件大小,支持KVO More... | |
BOOL | loop |
设置是否循环播放,支持KVO More... | |
AVPMirrorMode | mirrorMode |
渲染镜像模式,支持KVO More... | |
BOOL | muted |
设置是否静音,支持KVO More... | |
AVPOutputAudioChannel | outputAudioChannel |
设置输出声道,若输入源是双声道,则支持切换为左声道、右声道;若输入源是单声道,则设置无效。该设置会同时影响音频渲染及PCM数据回调 More... | |
AVPStatus | playerStatus |
获取播放器状态,支持KVO More... | |
AVPView * | playerView |
设置播放器的视图playerView AVPView: mac下为NSOpenGLView,iOS下为UIView More... | |
float | rate |
播放速率,0.5-2.0之间,1为正常播放,支持KVO More... | |
id< CicadaRenderingDelegate > | renderingDelegate |
设置渲染回调。 More... | |
AVPRotateMode | rotateMode |
渲染旋转模式,支持KVO More... | |
int | rotation |
获取视频的旋转角度,从metadata中获取出来,支持KVO More... | |
AVPScalingMode | scalingMode |
渲染填充模式,支持KVO More... | |
float | volume |
获取/设置播放器的音量(非系统音量),支持KVO,范围0.0~2.0,当音量大于1.0时,可能出现噪音,不推荐使用。 More... | |
int | width |
获取视频的宽度,支持KVO More... | |
- (void) addExtSubtitle: | (NSString *) | URL |
添加外挂字幕。
URL | 字幕地址 |
- (void) clearScreen |
清空画面。
- (void) clearScreenSync |
同步清空画面。
- (void) destroy |
同步销毁播放器
Implemented in AliListPlayer.
- (void) destroyAsync |
异步销毁播放器。当实例不再需要时,省去stop的调用并使用destroyAsync进行异步释放,可以加快页面响应速度,提高体验,释放后不要再调用prepare进行新的起播,否则调用效果不可预知。
Implemented in AliListPlayer.
- (void) enableDowngrade: | (AVPUrlSource *) | source | |
config: | (AVPConfig *) | config | |
播放器降级设置
source | 降级url |
config | 降级配置 |
- (NSString *) getCacheFilePath: | (NSString *) | URL |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onGetCacheNameByURL
。
如果没有实现delegate,将会采用默认逻辑生成文件名。
URL | URL |
- (NSString *) getCacheFilePath: | (NSString *) | vid | |
format: | (NSString *) | format | |
definition: | (NSString *) | definition | |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback
。
如果没有实现delegate,将会采用默认逻辑生成文件名。
vid | 视频id |
format | 视频格式 |
definition | 视频清晰度 |
- (NSString *) getCacheFilePath: | (NSString *) | vid | |
format: | (NSString *) | format | |
definition: | (NSString *) | definition | |
previewTime: | (int) | previewTime | |
根据url获取缓存的文件名。如果有自定义的规则,请实现delegate onCacheNameByVidCallback
。
如果没有实现delegate,将会采用默认逻辑生成文件名。
vid | 视频id |
format | 视频格式 |
definition | 视频清晰度 |
previewTime | 试看时长 |
- (AVPTrackInfo *) getCurrentTrack: | (AVPTrackType) | type |
+ (NSString *) getDeviceUUID |
获取设备UUID
- (AVPMediaInfo *) getMediaInfo |
获取媒体信息,包括track信息
- (NSString *) getOption: | (AVPOption) | key |
获取播放器的参数
key | 参数值 |
- (int64_t) getPlayedDuration |
@breif 获取当前播放时长,不受seek的影响
- (void *) getPlayer |
- (NSString *) getPlayerName |
获取播放时使用的播放器名字
- (NSString *) getPropertyString: | (AVPPropertyKey) | key |
根据key获取相应的信息。
key | 关键字枚举值 |
+ (NSString *) getSDKVersion |
获取SDK版本号信息
- (AVPMediaInfo *) getSubMediaInfo |
获取媒体子流信息,包括track信息
- (void) getThumbnail: | (int64_t) | positionMs |
获取指定位置的缩略图
positionMs | 代表在哪个指定位置的缩略图 |
- (NSString *) getUserData |
获取UserData,一个实例绑定一个。
- (instancetype) init |
初始化播放器
Implemented in AliListPlayer, and AliVRPlayer.
- (instancetype) init: | (NSString *) | traceID |
初始化播放器
traceID | 便于跟踪日志,设为"DisableAnalytics"可关闭日志分析系统(不推荐)。 |
Implemented in AliListPlayer, and AliVRPlayer.
+ (void) initPlayerComponent: | (NSString *) | functionName | |
function: | (void *) | function | |
初始化播放器组件。这些组件是可裁剪的。App可删除相应动态库,去掉初始化组件代码,实现裁剪。
- (int) invokeComponent: | (NSString *) | content |
向播放器的组件发送命令。
content | 命令内容。 |
+ (BOOL) isFeatureSupport: | (SupportFeatureType) | type |
返回某项功能是否支持
type | 是否支持的功能的类型。 参考SupportFeatureType。 |
+ (void) netWorkReConnect |
重连所有网络连接,网络路由发生变化后,调用此接口,可以让播放器所有的连接切换到新的路由上去。
- (void) pause |
暂停播放
- (void) prepare |
播放准备,异步
- (void) redraw |
刷新view,例如view size变化时。
- (void) reload |
重新加载。比如网络超时时,可以重新加载。
- (void) reset |
重置播放
- (void) seekToTime: | (int64_t) | time | |
seekMode: | (AVPSeekMode) | seekMode | |
- (void) selectExtSubtitle: | (int) | trackIndex | |
enable: | (BOOL) | enable | |
选择外挂字幕
trackIndex | 字幕索引 |
enable | true:选择,false:关闭 |
- (void) selectTrack: | (int) | trackIndex |
根据trackIndex,切换清晰度
trackIndex | 选择清晰度的index,SELECT_AVPTRACK_TYPE_VIDEO_AUTO代表自适应码率 |
- (void) selectTrack: | (int) | trackIndex | |
accurate: | (BOOL) | accurate | |
根据trackIndex,切换清晰度
trackIndex | 选择清晰度的index,SELECT_AVPTRACK_TYPE_VIDEO_AUTO代表自适应码率 |
accurate | 是否精准跳转。 |
- (void) sendCustomEvent: | (NSString *) | args |
发送用户自定义事件,将通过AVPEventReportParamsDelegate回调。事件 e = 5001。
+ (void) setAudioSessionDelegate: | (id< CicadaAudioSessionDelegate >) | delegate |
设置AudioSession的Delegate
delegate | Delegate对象 |
- (void) setAuthSource: | (AVPVidAuthSource *) | source |
使用vid+playauth方式播放。可参考:https://help.aliyun.com/document_detail/57294.html
source | AVPVidAuthSource的输入类型 |
- (void) setBitStreamSource: | (AVPBitStreamSource *) | source |
- (BOOL) setCacheConfig: | (AVPCacheConfig *) | cacheConfig |
- (void) setDefaultBandWidth: | (int) | bandWidth |
设置多码率时默认播放的码率。将会选择与之最接近的一路流播放。
bandWidth | 播放的码率。 |
+ (void) setEnableLog: | (BOOL) | enableLog |
是否打开log输出
enableLog | true表示输出log |
- (void) setEventReportParamsDelegate: | (id< AVPEventReportParamsDelegate >) | delegate |
设置代理 参考AVPEventReportParamsDelegate
- (void) setFilterConfig: | (AVPFilterConfig *) | filterConfig |
设置滤镜配置。在prepare之前调用此方法。如果想更新,调用updateFilterConfig()
filterConfig |
- (void) setFilterInvalid: | (NSString *) | target | |
invalid: | (BOOL) | invalid | |
开启关闭滤镜.
target | 如果为空,则对所有滤镜生效 |
invalid | true: 开启; false: 关闭 |
- (void) setLiveStsSource: | (AVPLiveStsSource *) | source |
使用LiveSts 方式播放直播流
source | AVPLiveStsSource的输入类型 |
+ (void) setLogCallbackInfo: | (AVPLogLevel) | logLevel | |
callbackBlock: | (void(^)(AVPLogLevel logLevel, NSString *strLog)) | block | |
设置日志打印回调block,异步
logLevel | log输出级别 |
callbackBlock | log回调block,可以为nil |
+ (void) setLogOption: | (AVPLogOption) | logOption | |
value: | (int) | value | |
设置日志打印选项
logOption | logOption |
value | 选项value 0代表关闭 1代表打开 |
- (void) setMaxAccurateSeekDelta: | (int) | delta |
设置精准seek的最大间隔。
delta | 间隔时间,单位毫秒 |
- (void) setMpsSource: | (AVPVidMpsSource *) | source |
用vid和MPS信息来播放视频。可参考:https://help.aliyun.com/document_detail/53522.html?spm=5176.doc53534.2.5.mhSfOh
source | AVPVidMpsSource的输入类型 |
- (void) setOption: | (PlayerOption) | key | |
value: | (NSString *) | value | |
设置特定功能选项。
- (void) setOption: | (PlayerOption) | key | |
valueInt: | (int) | value | |
设置特定功能选项。
- (void) setPictureinPictureDelegate: | (id< AliPlayerPictureInPictureDelegate >) | delegate |
为画中画功能设置代理
delegate | 画中画代理 |
- (void) setPictureInPictureEnable: | (BOOL) | enable |
设置画中画功能开启/关闭 (目前播放器自带的画中画功能需要iOS15以上的系统,如果其他系统,可以通过播放器CicadaRenderingDelegate返回的pixelbuffer来自定义实现)
- (void) setPictureInPictureShowMode: | (AVPPIPShowMode) | pipShowMode |
为画中画功能设置显示模式
delegate | 画中画显示模式 |
- (void) setPlayUrlConvertCallback: | (PlayURLConverCallback) | callback |
设置转换播放的url的回调函数,一般用于p2p中的url地址转换
callback | 回调函数指针 |
- (void) setPreferPlayerName: | (NSString *) | name |
设置期望使用的播放器名字。
name | 期望使用的播放器名字 |
- (void) setStartTime: | (int64_t) | time | |
seekMode: | (AVPSeekMode) | seekMode | |
以指定位置起播,每次prepare前调用,仅生效一次。(用于代替原先的起播前seek的方案)
time | 新的播放位置,单位毫秒 |
seekMode | seek模式 |
- (void) setStreamDelayTime: | (int) | index | |
time: | (int) | time | |
设置某路流相对于主时钟的延时时间,默认是0, 目前只支持外挂字幕
index | 流的索引 |
time | 延时,单位毫秒 |
- (void) setStsSource: | (AVPVidStsSource *) | source |
用vid和sts来播放视频,sts可参考:https://help.aliyun.com/document_detail/28756.html?spm=a2c4g.11186623.4.4.6f554c07q7B7aS
source | AVPVidStsSource的输入类型 |
- (void) setThumbnailUrl: | (NSString *) | URL |
设置缩略图URL
URL | 缩略图URL |
- (void) setTraceID: | (NSString *) | traceID |
用于跟踪debug信息
traceID | 指定和其他客户端连接可跟踪的id |
- (void) setUrlSource: | (AVPUrlSource *) | source |
- (void) setUserData: | (NSString *) | userData |
设置UserData,用于一些全局API的透传,以区分player实例。
- (void) setVerifyStsCallback: | (AVPStsStatus(^)(AVPStsInfo info)) | callback |
设置校验AVPStsInfo是否过期回调
callback |
- (void) setVideoTag: | (int *) | tags | |
size: | (int) | size | |
设置视频标签。值范围[0,99]。
- (void) snapShot |
截图 AVPImage: mac平台返回NSImage,iOS平台返回UIImage
- (void) start |
开始播放
Implemented in AVPLiveTimeShift.
- (void) stop |
停止播放
Implemented in AliListPlayer, and AVPLiveTimeShift.
- (void) switchStream: | (NSString *) | URL |
根据url进行多清晰度切换,选择成功与否的结果通过AVPDelegate onStreamSwitchedSuccess/onStreamSwitchedFail回调。 注意:
url | 新流的url地址 |
- (void) updateFilterConfig: | (NSString *) | target | |
options: | (AVPFilterOptions *) | options | |
更新滤镜配置
target | |
options |
- (void) updateLiveStsInfo: | (NSString *) | accId | |
accKey: | (NSString *) | accKey | |
token: | (NSString *) | token | |
region: | (NSString *) | region | |
更新LiveSts信息
|
readwritenonatomicweak |
设置渲染回调。废弃,使用renderingDelegate。
|
readwritenonatomicassign |
Alpha渲染模式,支持alpha在右侧、左侧、上侧、下侧,默认值无
|
readwritenonatomicassign |
设置是否自动播放,支持KVO
|
readnonatomicassign |
获取已经缓存的位置,支持KVO
|
readnonatomicassign |
获取当前下载速度,支持KVO
|
readnonatomicassign |
获取当前播放位置,支持KVO
|
readnonatomicassign |
获取当前播放位置的utc时间,支持KVO
|
readwritenonatomicweak |
设置代理,参考AVPDelegate
|
readnonatomicassign |
获取视频的长度,支持KVO
|
readwritenonatomicassign |
是否开启硬件解码,支持KVO
|
readwritenonatomicweak |
设置埋点事件回调。
|
readnonatomicassign |
获取视频的高度,支持KVO
|
readnonatomicassign |
获取当前播放命中的缓存文件大小,支持KVO
|
readwritenonatomicassign |
设置是否循环播放,支持KVO
|
readwritenonatomicassign |
渲染镜像模式,支持KVO
|
readwritenonatomicassign |
设置是否静音,支持KVO
|
readwritenonatomicassign |
设置输出声道,若输入源是双声道,则支持切换为左声道、右声道;若输入源是单声道,则设置无效。该设置会同时影响音频渲染及PCM数据回调
|
readnonatomicassign |
获取播放器状态,支持KVO
|
readwritenonatomicstrong |
设置播放器的视图playerView AVPView: mac下为NSOpenGLView,iOS下为UIView
|
readwritenonatomicassign |
播放速率,0.5-2.0之间,1为正常播放,支持KVO
|
readwritenonatomicweak |
设置渲染回调。
|
readwritenonatomicassign |
渲染旋转模式,支持KVO
|
readnonatomicassign |
获取视频的旋转角度,从metadata中获取出来,支持KVO
|
readwritenonatomicassign |
渲染填充模式,支持KVO
|
readwritenonatomicassign |
获取/设置播放器的音量(非系统音量),支持KVO,范围0.0~2.0,当音量大于1.0时,可能出现噪音,不推荐使用。
|
readnonatomicassign |
获取视频的宽度,支持KVO