AliyunPlayer v7.1.0
Aliyun Player API Reference Manual for iOS Platforms
Loading...
Searching...
No Matches
AliListPlayer Class Reference

#include "AliListPlayer.h"

Inheritance diagram for AliListPlayer:
AliPlayer

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) - 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
 同步清空画面。
 
(void) - enableDowngrade:config:
 播放器降级设置
 
(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
 获取媒体信息,包括track信息
 
(NSString *) - getOption:
 获取播放器的参数
 
(int64_t) - getPlayedDuration
 @breif 获取当前播放时长,不受seek的影响
 
(void *) - getPlayer
 
(NSString *) - getPlayerName
 获取播放时使用的播放器名字
 
(NSString *) - getPropertyString:
 根据key获取相应的信息。
 
(AVPMediaInfo *) - getSubMediaInfo
 获取媒体子流信息,包括track信息
 
(void) - getThumbnail:
 获取指定位置的缩略图
 
(NSString *) - getUserData
 获取UserData,一个实例绑定一个。
 
(int) - invokeComponent:
 向播放器的组件发送命令。
 
(void) - pause
 暂停播放
 
(void) - prepare
 播放准备,异步
 
(void) - redraw
 刷新view,例如view size变化时。
 
(void) - reload
 重新加载。比如网络超时时,可以重新加载。
 
(void) - reset
 重置播放
 
(void) - seekToTime:seekMode:
 跳转到指定的播放位置
 
(void) - selectExtSubtitle:enable:
 选择外挂字幕
 
(void) - selectTrack:
 根据trackIndex,切换清晰度
 
(void) - selectTrack:accurate:
 根据trackIndex,切换清晰度
 
(void) - sendCustomEvent:
 发送用户自定义事件,将通过AVPEventReportParamsDelegate回调。事件 e = 5001。
 
(void) - setAuthSource:
 使用vid+playauth方式播放。可参考:https://help.aliyun.com/document_detail/57294.html
 
(void) - setBitStreamSource:
 使用bitstream方式来播放视频
 
(BOOL) - setCacheConfig:
 设置缓存配置
 
(void) - setConfig:
 播放器设置
 
(void) - setDefaultBandWidth:
 设置多码率时默认播放的码率。将会选择与之最接近的一路流播放。
 
(void) - setEventReportParamsDelegate:
 设置代理 参考AVPEventReportParamsDelegate
 
(void) - setFilterConfig:
 设置滤镜配置。在prepare之前调用此方法。如果想更新,调用updateFilterConfig()
 
(void) - setFilterInvalid:invalid:
 开启关闭滤镜.
 
(void) - setLiveStsSource:
 使用LiveSts 方式播放直播流
 
(void) - setMaxAccurateSeekDelta:
 设置精准seek的最大间隔。
 
(void) - setMpsSource:
 用vid和MPS信息来播放视频。可参考:https://help.aliyun.com/document_detail/53522.html?spm=5176.doc53534.2.5.mhSfOh
 
(void) - setOption:value:
 设置特定功能选项。
 
(void) - setOption:valueInt:
 设置特定功能选项。
 
(void) - setPictureinPictureDelegate:
 为画中画功能设置代理
 
(void) - setPictureInPictureEnable:
 设置画中画功能开启/关闭 (目前播放器自带的画中画功能需要iOS15以上的系统,如果其他系统,可以通过播放器CicadaRenderingDelegate返回的pixelbuffer来自定义实现)
 
(void) - setPictureInPictureShowMode:
 为画中画功能设置显示模式
 
(void) - setPlayUrlConvertCallback:
 设置转换播放的url的回调函数,一般用于p2p中的url地址转换
 
(void) - setPreferPlayerName:
 设置期望使用的播放器名字。
 
(void) - setStartTime:seekMode:
 以指定位置起播,每次prepare前调用,仅生效一次。(用于代替原先的起播前seek的方案)
 
(void) - setStreamDelayTime:time:
 设置某路流相对于主时钟的延时时间,默认是0, 目前只支持外挂字幕
 
(void) - setStsSource:
 用vid和sts来播放视频,sts可参考:https://help.aliyun.com/document_detail/28756.html?spm=a2c4g.11186623.4.4.6f554c07q7B7aS
 
(void) - setThumbnailUrl:
 设置缩略图URL
 
(void) - setTraceID:
 用于跟踪debug信息
 
(void) - setUrlSource:
 使用url方式来播放视频
 
(void) - setUserData:
 设置UserData,用于一些全局API的透传,以区分player实例。
 
(void) - setVerifyStsCallback:
 设置校验AVPStsInfo是否过期回调
 
(void) - setVideoTag:size:
 设置视频标签。值范围[0,99]。
 
(void) - snapShot
 截图 AVPImage: mac平台返回NSImage,iOS平台返回UIImage
 
(void) - start
 开始播放
 
(void) - switchStream:
 根据url进行多清晰度切换,选择成功与否的结果通过AVPDelegate onStreamSwitchedSuccess/onStreamSwitchedFail回调。 注意:
 
(void) - updateFilterConfig:options:
 更新滤镜配置
 
(void) - updateLiveStsInfo:accKey:token:region:
 更新LiveSts信息
 

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
 Alpha渲染模式,支持alpha在右侧、左侧、上侧、下侧,默认值无
 
BOOL autoPlay
 设置是否自动播放,支持KVO
 
int64_t bufferedPosition
 获取已经缓存的位置,支持KVO
 
int64_t currentDownloadSpeed
 获取当前下载速度,支持KVO
 
int64_t currentPosition
 获取当前播放位置,支持KVO
 
int64_t currentUtcTime
 获取当前播放位置的utc时间,支持KVO
 
id< AVPDelegatedelegate
 设置代理,参考AVPDelegate
 
int64_t duration
 获取视频的长度,支持KVO
 
BOOL enableHardwareDecoder
 是否开启硬件解码,支持KVO
 
id< AVPEventReportParamsDelegateeventReportParamsDelegate
 设置埋点事件回调。
 
int height
 获取视频的高度,支持KVO
 
int64_t localCacheLoadedSize
 获取当前播放命中的缓存文件大小,支持KVO
 
BOOL loop
 设置是否循环播放,支持KVO
 
AVPMirrorMode mirrorMode
 渲染镜像模式,支持KVO
 
BOOL muted
 设置是否静音,支持KVO
 
AVPOutputAudioChannel outputAudioChannel
 设置输出声道,若输入源是双声道,则支持切换为左声道、右声道;若输入源是单声道,则设置无效。该设置会同时影响音频渲染及PCM数据回调
 
AVPStatus playerStatus
 获取播放器状态,支持KVO
 
AVPView * playerView
 设置播放器的视图playerView AVPView: mac下为NSOpenGLView,iOS下为UIView
 
float rate
 播放速率,0.5-2.0之间,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版本号信息
 
(void) + initPlayerComponent:function:
 初始化播放器组件。这些组件是可裁剪的。App可删除相应动态库,去掉初始化组件代码,实现裁剪。
 
(BOOL) + isFeatureSupport:
 返回某项功能是否支持
 
(void) + netWorkReConnect
 重连所有网络连接,网络路由发生变化后,调用此接口,可以让播放器所有的连接切换到新的路由上去。
 
(void) + setAudioSessionDelegate:
 设置AudioSession的Delegate
 
(void) + setEnableLog:
 是否打开log输出
 
(void) + setLogCallbackInfo:callbackBlock:
 设置日志打印回调block,异步
 
(void) + setLogOption:value:
 设置日志打印选项
 

Method Documentation

◆ addUrlSource:uid:

- (void) addUrlSource: (NSString *) url
uid: (NSString *) uid 

添加资源到播放列表中

Parameters
urlurl的播放方式
uid该资源的uid,代表在列表中的唯一标识

◆ addUrlSource:uid:config:

- (void) addUrlSource: (NSString *) urlSource
uid: (NSString *) uid
config: (AVPPreloadConfig *) config 

添加资源到播放列表中

Parameters
urlurl的播放方式
uid该资源的uid,代表在列表中的唯一标识
config预加载配置

◆ addVidSource:uid:

- (void) addVidSource: (NSString *) vid
uid: (NSString *) uid 

添加资源到播放列表中

Parameters
vidvid的播放方式
uid该资源的uid,代表在列表中的唯一标识

◆ clear

- (void) clear

清除播放列表

◆ currentUid

- (NSString *) currentUid

获取当前播放资源的uid

◆ destroy

- (void) destroy

同步销毁播放器

Implements AliPlayer.

◆ destroyAsync

- (void) destroyAsync

异步销毁播放器。当实例不再需要时,省去stop的调用并使用destroyAsync进行异步释放,可以加快页面响应速度,提高体验,释放后不要再调用prepare进行新的起播,否则调用效果不可预知。

Implements AliPlayer.

◆ enableStrategy:enable:

- (void) enableStrategy: (AVPStrategyType) type
enable: (bool) enable 

启用预加载策略。

Parameters
type策略类型
enable是否启用

◆ getCurrentPlayer

- (AliPlayer *) getCurrentPlayer

获取当前的播放器实例。

◆ GetMultiBiratesMode

- (AVPMultiBitratesMode) GetMultiBiratesMode

获取当前多码率HLS流预加载模式

◆ getPreRenderPlayer

- (AliPlayer *) getPreRenderPlayer

获取预渲染的播放器实例。listPlayer在播放当前视频时,会去预渲染下一个视频,用户可以用该预渲染的实例去提前播放下一个视频

◆ init

- (instancetype) init

初始化播放列表

Implements AliPlayer.

◆ init:

- (instancetype) init: (NSString *) traceID

初始化播放器

Parameters
traceID用于跟踪debug信息

Implements AliPlayer.

◆ moveTo:

- (BOOL) moveTo: (NSString *) uid

移动到指定位置开始准备播放,url播放方式

Parameters
uid指定资源的uid,代表在列表中的唯一标识

◆ moveTo:accId:accKey:token:region:

- (BOOL) moveTo: (NSString *) uid
accId: (NSString *) accId
accKey: (NSString *) accKey
token: (NSString *) token
region: (NSString *) region 

移动到指定位置开始准备播放,sts播放方式,需要更新sts信息

Parameters
uid指定资源的uid,代表在列表中的唯一标识
accIdvid sts播放方式的accessKeyID
accKeyvid sts播放方式的accessKeySecret
tokenvid sts播放方式的securtiToken
regionvid sts播放方式的region 默认cn-shanghai

◆ moveTo:playAuth:

- (BOOL) moveTo: (NSString *) uid
playAuth: (NSString *) playAuth 

移动到指定位置开始准备播放,playauth播放方式,需要更新playauth信息

Parameters
uid指定资源的uid,代表在列表中的唯一标识
playAuthvid playauth播放方式的playAuth

◆ moveToNext

- (BOOL) moveToNext

当前位置移动到下一个进行准备播放,url播放方式

◆ moveToNext:

- (BOOL) moveToNext: (NSString *) playAuth

当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息

Parameters
playAuthvid playauth播放方式的playAuth

◆ moveToNext:accKey:token:region:

- (BOOL) moveToNext: (NSString *) accId
accKey: (NSString *) accKey
token: (NSString *) token
region: (NSString *) region 

当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息

Parameters
accIdvid sts播放方式的accessKeyID
accKeyvid sts播放方式的accessKeySecret
tokenvid sts播放方式的securtiToken
regionvid sts播放方式的region 默认cn-shanghai

◆ moveToNextWithPrerendered

- (BOOL) moveToNextWithPrerendered

当前位置移动到下一个进行准备播放,url播放方式.

该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放

◆ moveToNextWithPrerendered:

- (BOOL) moveToNextWithPrerendered: (NSString *) playAuth

当前位置移动到下一个进行准备播放,playauth播放方式,需要更新playauth信息.

该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放

Parameters
playAuthvid playauth播放方式的playAuth

◆ moveToNextWithPrerendered:accKey:token:region:

- (BOOL) moveToNextWithPrerendered: (NSString *) accId
accKey: (NSString *) accKey
token: (NSString *) token
region: (NSString *) region 

当前位置移动到下一个进行准备播放,sts播放方式,需要更新sts信息.

该接口只在使用了预渲染的player(getPreRenderPlayer返回的player)去播放的时候去调用,listPlayer内部不再去播放

Parameters
accIdvid sts播放方式的accessKeyID
accKeyvid sts播放方式的accessKeySecret
tokenvid sts播放方式的securtiToken
regionvid sts播放方式的region 默认cn-shanghai
preRendered是否使用了预渲染的player去播放,如果为true,则listPlayer内部不再去播放

◆ moveToPre

- (BOOL) moveToPre

当前位置移动到上一个进行准备播放,url播放方式

◆ moveToPre:

- (BOOL) moveToPre: (NSString *) playAuth

当前位置移动到上一个进行准备播放,playauth播放方式,需要更新playauth信息

Parameters
playAuthvid playauth播放方式的playAuth

◆ moveToPre:accKey:token:region:

- (BOOL) moveToPre: (NSString *) accId
accKey: (NSString *) accKey
token: (NSString *) token
region: (NSString *) region 

当前位置移动到上一个进行准备播放,sts播放方式,需要更新sts信息

Parameters
accIdvid sts播放方式的accessKeyID
accKeyvid sts播放方式的accessKeySecret
tokenvid sts播放方式的securtiToken
regionvid sts播放方式的region 默认cn-shanghai

◆ removeSource:

- (void) removeSource: (NSString *) uid

从播放列表中删除指定资源

Parameters
uid该资源的uid,代表在列表中的唯一标识

◆ SetMultiBitratesMode:

- (void) SetMultiBitratesMode: (AVPMultiBitratesMode) mode

设置多码率HLS流预加载模式

Parameters
mode为设置的预加载模式

◆ setPreloadCount:nextCount:

- (void) setPreloadCount: (int) prevCount
nextCount: (int) nextCount 

设置预加载数量

Parameters
prevCount之前的预加载数量
nextCount后面的预加载数量

◆ setScene:

- (void) setScene: (AVPSceneType) type

设置预加载场景。

Parameters
type场景类型

◆ setStrategyParam:strategyParam:

- (void) setStrategyParam: (AVPStrategyType) type
strategyParam: (NSString *) strategyParam 

设置策略参数。

Parameters
type策略类型
strategyParam策略参数,格式为json字符串 支持参数:algorithm, offset, scale 配置参数举例: 动态预加载时长递减策略 默认配置 { "algorithm":"sub", "offset":"500" } 转换成字符串为 "{\"algorithm\": \"div\",\"scale\": \"0.75\"}" 或者 { "algorithm":"div", "scale":"0.75" }

◆ stop

- (void) stop

停止播放

Implements AliPlayer.

◆ updatePreloadConfig:

- (void) updatePreloadConfig: (AVPPreloadConfig *) config

更新uid相关的预加载配置

Parameters
uid每个url都是不一样的uid
config预加载配置

◆ updatePreloadConfiguid:config:

- (void) updatePreloadConfiguid: (NSString *) uid
config: (AVPPreloadConfig *) config 

更新预加载配置

Parameters
config预加载配置

Property Documentation

◆ maxPreloadMemorySizeMB

- (int) maxPreloadMemorySizeMB
readwritenonatomicassign

设置最大的预缓存的内存大小,默认100M,最小20M

◆ playAuthPreloadDefinition

- (NSString*) playAuthPreloadDefinition
readwritenonatomiccopy

◆ preloadCount

- (int) preloadCount
readwritenonatomicassign

获取/设置预加载的个数,当前位置的前preloadCount和后preloadCount,默认preloadCount = 2

◆ stsPreloadDefinition

- (NSString*) stsPreloadDefinition
readwritenonatomiccopy

获取/设置列表播放的sts播放方式,指定默认的清晰度,如"LD、HD"等,moveTo之前调用,一旦预加载后不能更改


The documentation for this class was generated from the following file: