全部产品
云市场

高级播放器接口说明

更新时间:2019-06-27 14:19:00

AliyunVodPlayer

  • 类名:AliyunVodPlayer

  • 功能:高级播放器类,用于创建播放器实例。

  • 成员:

成员 功能
AliyunVodPlayer 创建播放器
setOnPreparedListener 设置视频准备结束的监听事件
setOnFirstFrameStartListener 设置首帧开始播放的监听事件
setOnSeekCompleteListener 设置拖动结束监听事件
setOnCompletionListener 设置视频播放结束的监听事件
setOnStoppedListener 设置视频播放停止的监听事件
setOnPcmDataListener 设置视频的音频回调监听事件
setOnLoadingListener 设置视频缓冲状态的监听事件
setOnErrorListener 设置视频出错的监听事件
setOnInfoListener 设置视频信息的监听事件
setOnVideoSizeChangedListener 设置视频大小改变监听事件
setOnChangeQualityListener 设置视频切换清晰度的监听事件
setOnReplayListener 设置视频重播的监听事件
setOnAutoPlayListener 设置视频自动播放的监听事件
setOnCircleStartListener 设置视频循环播放开始事件
setDisplay 设置surfaceHolder
setSurface 设置surface
surfaceChanged 画面改变时调用
prepareAsync 准备视频(异步)
start 开始播放
pause 暂停播放
resume 恢复播放
seekTo 拖动到的时间点
stop 停止播放
reset 重置播放器
release 释放播放器资源
setVolume 设置音量
getVolume 获取当前音量
getVideoWidth 获取视频宽度
getVideoHeight 获取视频高度
getDuration 获取当前视频总时长
getCurrentPosition 获取当前播放位置
isPlaying 判断是否在播放状态
getPlayerState 获取播放器状态
getMediaInfo 获取媒体信息
getCurrentQuality 获取当前视频清晰度
changeQuality 切换播放的清晰度
enableNativeLog 开启native底层日志
disableNativeLog 关闭native底层日志
setThreadExecutorService 设置线程池
setPlayingCache 边下边缓存配置
setPlaySpeed 设置倍速播放速度
setVideoScalingMode 设置视频缩放模式
setAutoPlay 设置自动播放
replay 重播
setNetworkTimeout 设置网络超时时间
setMuteMode 设置静音
getAllDebugInfo 获取调试信息
setScreenBrightness 设置屏幕亮度
getScreenBrightness 获取屏幕亮度
getBufferingPosition 获取缓冲进度
setMaxBufferDuration 设置最大缓冲值
getSDKVersion 获取SDK版本号
snapShot 截图
setCirclePlay 设置循环播放
setRenderMirrorMode 设置镜像模式
setRenderRotate 设置画面旋转
getCurrentLiveTime 获取当前直播时间
getCurrentTime 获取当前播放时间
seekToLiveTime 跳转到某个直播点
setOnTimeShiftUpdaterListener 直播时移时间段更新监听
setOnSeekLiveCompletionListener 直播时移seek结束监听
setOnTimeExpiredErrorListener 请求源过期回调监听
setOnUrlTimeExpiredListener 播放地址即将过期的回调监听
setReferer 设置播放鉴权(黑白名单)

下面详细介绍一下各成员函数的具体使用:

AliyunVodPlayer

public AliyunVodPlayer(Context context)

功能:创建播放器

参数:context 上下文

setOnPreparedListener

public void setOnPreparedListener(OnPreparedListener l)

功能:设置视频准备结束的监听事件

参数:视频准备结束的监听事件,见OnPreparedListener接口

setOnFirstFrameStartListener

public void setOnFirstFrameStartListener(OnFirstFrameStartListener l)

功能:设置首帧开始播放的监听事件

参数:首帧开始播放的监听事件,见OnFirstFrameStartListener接口

setOnSeekCompleteListener

public void setOnSeekCompleteListener(OnSeekCompleteListener l)

功能:设置拖动结束监听事件

参数:拖动结束监听事件,见OnSeekCompleteListener接口

setOnCompletionListener

public void setOnCompletionListener(OnCompletionListener l)

功能:设置视频播放结束的监听事件

参数:视频播放结束监听事件,见OnCompletionListener接口

setOnStoppedListener

public void setOnStoppedListener(OnStoppedListener l)

功能:设置视频播放停止的监听事件

参数:视频播放停止监听事件,见OnStoppedListener接口

setOnPcmDataListener

public void setOnPcmDataListener(OnPcmDataListener l)

功能:设置视频的音频回调监听事件

参数:视频的音频回调监听事件,见OnPcmDataListener接口

setOnLoadingListener

public void setOnLoadingListener(OnLoadingListener l)

功能:设置视频缓冲状态的监听事件

参数:视频缓冲状态的监听事件,见OnLoadingListener接口

setOnErrorListener

public void setOnErrorListener(OnErrorListener l)

功能:设置视频出错的监听事件

参数:视频出错监听事件,见OnErrorListener接口

setOnInfoListener

public void setOnInfoListener(OnInfoListener l)

功能:设置视频信息的监听事件

参数:视频信息监听事件,见OnInfoListener接口

setOnVideoSizeChangedListener

public void setOnVideoSizeChangedListener(OnVideoSizeChangedListener l)

功能:设置视频大小改变监听事件

参数:视频大小改变事件,见OnVideoSizeChangedListener接口

setOnChangeQualityListener

public void setOnChangeQualityListener(OnChangeQualityListener l)

功能:设置视频切换清晰度的监听事件

参数:视频切换清晰度监听事件,见OnChangeQualityListener接口

setOnRePlayListener

public void setOnRePlayListener(OnRePlayListener l)

功能:设置视频重播的监听事件

参数:视频重播监听事件,见OnRePlayListener接口

setOnCircleStartListener

public void setOnCircleStartListener(OnCircleStartListener l)

功能:设置视频循环播放开始的监听事件

参数:视频循环播放开始的监听事件,见OnCircleStartListener接口

setOnAutoPlayListener

public void setOnAutoPlayListener(OnAutoPlayListener l)

功能:设置视频自动播放的监听事件

参数:视频自动播放监听事件,见OnAutoPlayListener接口

setDisplay

public void setDisplay(SurfaceHolder surfaceHolder)

功能:设置surfaceHolder

参数:播放画面的surfaceHolder

setSurface

public void setSurface(Surface surface)

功能:设置surface

参数:播放画面的surface

prepareAsync

public void prepareAsync(AliyunPlayAuth aliyunPlayAuth)

功能:通过AliyunPlayAuth准备视频(异步)

参数:视频的AliyunPlayAuth

prepareAsync

public void prepareAsync(AliyunLocalSource aliyunLocalSource)

功能:通过AliyunLocalSource准备视频(异步)

参数:视频的AliyunLocalSource

prepareAsync

public void prepareAsync(AliyunVidSource aliyunVidSource)

功能:通过AliyunVidSource准备视频(异步),用于转码服务视频文件播放。

参数:视频的AliyunVidSource

prepareAsync

public void prepareAsync(AliyunVidSts aliyunVidSts)

功能:通过AliyunVidSts准备视频(异步),用于转码服务视频文件播放。

参数:视频的AliyunVidSts

start

public void start()

功能:开始播放

pause

public void pause()

功能:暂停播放

seekTo

public void seekTo(int ms)

功能:拖动到指定时间点

参数:拖动到的时间点,单位毫秒

resume

public void resume()

功能:恢复播放

stop

public void stop()

功能:停止播放

reset

public void reset()

功能:重置播放器

release

public void release()

功能:释放播放器资源

setVolume

public void setVolume(int volume)

功能:设置音量

参数:volume ,大于0小于100的音量值

getVolume

public int getVolume()

功能:获取当前音量

返回值:当前音量。范围0~100

getVideoWidth

public int getVideoWidth()

功能:获取视频宽度

返回值:当前视频的宽度

getVideoHeight

public int getVideoHeight()

功能:获取视频高度

返回值:当前视频的高度

getDuration

public long getDuration()

功能:获取当前视频总时长

返回值:当前视频总时长

getCurrentPosition

public long getCurrentPosition()

功能:获取当前播放位置

返回值:当前播放位置

isPlaying

public boolean isPlaying()

功能:判断是否在播放状态

返回值:播放器处于播放或暂停时返回true,否则为false

getPlayerState

public PlayerState getPlayerState()

功能:获取播放器状态

返回值:播放器状态。见PlayerState

getMediaInfo

public AliyunMediaInfo getMediaInfo()

功能:获取媒体信息

返回值:媒体信息。见AliyunMediaInfo

getCurrentQuality

public String getCurrentQuality()

功能:获取当前视频清晰度

返回值:当前视频清晰度。见QualityValue类

chageQuality

public void chageQuality(String quality)

功能:切换播放的清晰度

参数:清晰度值,见QualityValue类

chageQuality

public void changeQuality(String quality, AliyunPlayAuth playAuth)

功能:使用新的playAuth切换播放的清晰度

参数:

  1. 清晰度值,见QualityValue
  2. playAuth : 播放的视频源信息

enableNativeLog

public void enableNativeLog()

功能:开启native底层日志

disableNativeLog

public void disableNativeLog()

功能:关闭native底层日志

setThreadExecutorService

public void setThreadExecutorService(ExecutorService executorService)

功能:设置线程运行的线程池

参数:线程池

setPlayingCache

public void setPlayingCache(boolean enable, String saveDir, int maxDuration, long maxSize)

功能:设置边播边缓存的配置

参数:

  1. enable:是否可以边播边存。如果为true,则根据后面的几个参数决定是否能够缓存。
  2. saveDir:缓存的目录(绝对路径)
  3. maxDuration:能缓存的单个视频最大长度(单位:秒)。如果单个视频超过这个值,就不缓存。
  4. maxSize:缓存目录的所有缓存文件的总的最大大小(单位:MB)。如果超过则删除最旧文件,如果还是不够,则不缓存。

setPlaySpeed

public void setPlaySpeed(float speed)

功能:设置倍速播放速度

参数:speed:倍速值。范围0.5~2。

setVideoScalingMode

public void setVideoScalingMode(VideoScalingMode scalingMode)

功能:设置视频缩放模式

参数:scalingMode:缩放模式。具体参考VideoScalingMode类。

setAutoPlay

public void setAutoPlay(boolean auto)

功能:设置是否自动播放

参数:

  1. autotrue则自动播放。

replay

public void replay()

功能:重播

setNetworkTimeout

public void setNetworkTimeout(int mstimeout)

功能:设置网络超时时间

参数:

  1. 超时时间,单位:ms

setMuteMode

public void setMuteMode(boolean on)

功能:设置静音。

参数:

  1. true为静音。

getAllDebugInfo

public Map<String, String> getAllDebugInfo()

功能:获取所有调试信息

返回值:所有调试信息

setScreenBrightness

public void setScreenBrightness(int brightness)

功能:设置屏幕亮度

参数:亮度值:0~255.

getScreenBrightness

public int getScreenBrightness()

功能:获取屏幕亮度

返回值:亮度值

getBufferingPosition

public int getBufferingPosition()

功能:获取缓冲进度

返回值:当前缓冲位置。

setMaxBufferDuration

public void setMaxBufferDuration(int duration)

功能:设置最大缓冲进度

参数:最大缓冲进度

getSDKVersion

public String getSDKVersion()

功能:获取SDK版本号

snapShot

  1. public Bitmap snapShot()

功能:截取当前视频画面。

返回值:画面bitmap。

setCirclePlay

  1. public void setCirclePlay(boolean isCirclePlay)

功能:设置是否循环播放。true:循环播放开启。播放结束后自动从头开始播放。

setRenderMirrorMode

  1. public void setRenderMirrorMode(VideoMirrorMode mirrorMode)

功能:设置镜像模式。

参数: 无:VIDEO_MIRROR_MODE_NONE ; 水平翻转: VIDEO_MIRROR_MODE_HORIZONTAL; 垂直翻转: VIDEO_MIRROR_MODE_VERTICAL

setRenderRotate

  1. public void setRenderRotate(VideoRotate rotate)

功能:设置画面旋转

参数: 0°:ROTATE_0;90°: ROTATE_90;180°:ROTATE_180;270°: ROTATE_270

getCurrentLiveTime

  1. public long getCurrentLiveTime()

功能:获取当前直播时间

返回值:当前直播时间。单位毫秒

注意:此方法仅适用于AliyunLiveTimeShift的源。

getCurrentTime

  1. public long getCurrentTime()

功能:获取当前播放时间

返回值:当前播放时间。单位毫秒

注意:此方法仅适用于AliyunLiveTimeShift的源。

seekToLiveTime

  1. public void seekToLiveTime(long liveTime)

功能:seek到某个时间点播放

参数:播放时间。单位毫秒。

注意:此方法仅适用于AliyunLiveTimeShift的源。

setOnTimeShiftUpdaterListener

  1. public void setOnTimeShiftUpdaterListener(OnTimeShiftUpdaterListener l)

功能:直播时移时间段更新监听

参数:监听方法。见下文。

注意:此方法仅适用于AliyunLiveTimeShift的源。

setOnSeekLiveCompletionListener

  1. public void setOnSeekLiveCompletionListener(OnSeekLiveCompletionListener l)

功能:直播时移seek结束监听

参数:监听方法。见下文。

注意:此方法仅适用于AliyunLiveTimeShift的源。

setOnTimeExpiredErrorListener

  1. public void setOnTimeExpiredErrorListener(OnTimeExpiredErrorListener l)

功能:请求源过期回调监听

参数:监听方法。见下文。

setOnUrlTimeExpiredListener

  1. public void setOnUrlTimeExpiredListener(OnUrlTimeExpiredListener l)

功能:播放过程中鉴权即将过期时提供的回调消息(过期前一分钟回调)

参数:监听方法。见下文。

setReferer

public void setReferer(String referer);

功能:设置播放鉴权(黑白名单)

参数: referer:黑白名单字符串,以http://开头

AliyunPlayAuth类

  • 类名:AliyunPlayAuth类

  • 功能:播放源类。 AliyunPlayAuth.AliyunPlayAuthBuilder创建,赋值给播放器。

  • 成员:

成员 功能
getVideoId 获取设置的视频id
getQuality 获取设置的清晰度
getPlayAuth 获取设置的PlayAuth字符串
isForceQuality 是否强制播放某清晰度
getIsEncripted 视频源是否加密
getTitle 获取视频标题
setTitle 设置视频标题
getFormat 获取视频格式
getSize 获取视频大小

下面详细介绍一下各成员函数的具体使用:

getVideoId

public String getVideoId()

功能:获取设置的视频id

返回值:视频id

getQuality

public String getQuality()

功能:获取设置的清晰度

返回值:视频清晰度。见QualityValue类

getPlayAuth

public String getPlayAuth()

功能:获取设置的PlayAuth字符串

返回值:PlayAuth字符串

isForceQuality

public boolean isForceQuality()

功能:是否强制播放某清晰度

返回值:true:是。

getIsEncripted

public int getIsEncripted()

功能:视频源是否加密

返回值:1:加密,0:不加密

getTitle

public String getTitle()

功能:获取视频标题

返回值:视频标题

setTitle

public void setTitle(String title)

功能:设置视频标题

参数:视频标题

getFormat

public String getFormat()

功能:获取视频格式

返回值:视频格式

getSize

public int getSize()

功能:获取视频大小

返回值:视频大虾,单位:B

AliyunPlayAuth.AliyunPlayAuthBuilder

  • 类名: AliyunPlayAuthBuilder

  • 功能: AliyunPlayAuth的构建类。

  • 成员:

成员 功能
AliyunPlayAuthBuilder AliyunPlayAuth的创建
setIsEncripted 设置是否加密
getTitle 获取视频标题
setTitle 设置视频标题
setVideoId 设置视频id
setQuality 设置播放时期望的清晰度。默认为原画清晰度。
setPlayAuth 设置PlayAuth字符串
setFormat 设置格式
setSize 设置大小
setForceQuality 设置是否强制播放某清晰度
build 构建AliyunPlayAuth

下面详细介绍一下各成员函数的具体使用:

setIsEncripted

public void setIsEncripted(int isEncripted)

功能:设置视频源是否加密

参数:1:加密,0:不加密。

getTitle

public String getTitle()

功能:获取视频标题

返回值:视频标题

setTitle

public void setTitle(String title)

功能:设置视频标题

参数:视频标题

setVideoId

public void setVideoId(String videoId)

功能:设置视频id

参数:播放的视频id

setQuality

public void setQuality(String quality)

功能:设置播放时期望的清晰度。默认为原画清晰度

参数:视频的清晰度,见QualityValue类

setPlayAuth

public void setPlayAuth(String PlayAuth)

功能:PlayAuth

参数:PlayAuth: BASE64 default编码后的字符串

setForceQuality

public void setForceQuality(boolean force)

功能:设置强制播放某清晰度。如果设置,则播放的清晰度为setQuality设置的清晰度。同时界面上不会显示切换清晰度按钮。

参数:

  1. - force:是否强制

setFormat

public void setFormat(String format)

功能:设置视频格式

参数:视频的格式,例如:mp4,m3u8

setSize

public void setSize(int size)

功能:设置视频源的大小

参数:视频的大小。单位:B。

build

public AliyunPlayAuth build()

功能:构建AliyunPlayAuth

返回值:数据源类实例

AliyunLocalSource

  • 类名:AliyunLocalSource
  • 功能:本地或网络视频源类
  • 成员:
成员 功能
getTitle 获取视频的标题
getCoverPath 获取视频封面地址
getSource 获取视频播放地址

下面详细介绍一下各成员函数的具体使用:

getTitle

public String getTitle()

功能:获取视频的标题

返回值:视频的标题

getCoverPath

public String getCoverPath()

功能:获取视频封面地址

返回值:封面地址

getSource

public String getSource()

功能:获取视频播放地址

返回值:视频播放地址

AliyunLocalSource.AliyunLocalSourceBuilder

  • 类名:AliyunLocalSource.AliyunLocalSourceBuilder
  • 功能:构建AliyunLocalSource。
  • 成员:
成员 功能
setTitle 设置视频的标题
setCoverPath 设置视频封面地址
setSource 设置视频的播放地址
build 构建AliyunLocalSource

下面详细介绍一下各成员函数的具体使用:

setTitle

public void setTitle(String title)

功能:设置视频的标题

参数:

  1. -title:标题

setCoverPath

public void setCoverPath(String path)

功能:设置视频的封面

参数:

  1. -path:封面地址

setSource

public void setSource(String source)

功能:设置视频的地址。本地或者网络地址。

参数:

  1. -source:地址

build

public AliyunLocalSource build()

功能:构建AliyunLocalSource

返回值:本地数据源类实例

AliyunVidSource

  • 类名:AliyunVidSource
  • 功能:mts视频源类
  • 成员:
成员 功能
setVid 设置视频的vid
getVid 获取视频的vid
getAcId 获取accessKeyId
setAcId 设置accessKeyId
getAcKey 获取accessKeySecret
setAckey 设置accessKeySecret
getStsToken 获取sts的token
setStsToken 设置sts的token
getDomainRegion 获取主机区域
setDomainRegion 设置主机区域
getAuthInfo 获取auth信息
setAuthInfo 设置auth信息
isFourceQuality 是否强制分辨率
setFourceQuality 设置强制分辨率
getQuality 获取清晰度
setQuality 设置清晰度
getDomian 获取主机地址
setDomian 设置主机地址

AliyunVidSts

  • 类名:AliyunVidSts
  • 功能:sts视频源类
  • 成员:
成员 功能
setVid 设置视频的vid
getVid 获取视频的vid
getAcId 获取accessKeyId
setAcId 设置accessKeyId
getAcKey 获取accessKeySecret
setAckey 设置accessKeySecret
getSecurityToken 获取sts的token
setSecurityToken 设置sts的token
isFourceQuality 是否强制分辨率
setFourceQuality 设置强制分辨率
getQuality 获取清晰度
setQuality 设置清晰度
getTitle 获取标题
setTitle 设置设置

AliyunMediaInfo类

  • 类名:AliyunMediaInfo

  • 功能:视频信息类。Prepare成功之后,用于获取视频的信息,比如标题,封面,能播放的清晰度等。

  • 成员:

成员 功能
getTitle 获取视频的标题
getDuration 获取视频时长(毫秒)
getStatus 获取视频状态
getVideoId 获取视频vid
getQualities 获取视频支持的清晰度列表。清晰度值见QualityValue类
setDuration 设置时长
addQuality 添加清晰度
setTitle 设置标题
setStatus 设置状态
setVideoId 设置vid
setPostUrl 设置视频封面地址
getPostUrl 获取视频封面地址
getSize 获取视频大小

下面详细介绍一下各成员函数的具体使用:

getTitle

public String getTitle()

功能:获取视频的标题

返回值:视频的标题

getDuration

public int getDuration()

功能:获取视频时长(毫秒)

返回值:视频时长

getStatus

public String getStatus()

功能:获取视频状态

返回值:视频状态。

说明:视频状态包括:Uploading-上传中,UploadFail-上传失败,UploadSucc-上传完成,Transcoding-转码中,TranscodeFail-转码失败,Checking-审核中,Blocked-屏蔽,Normal-正常,Deleted-删除

getVideoId

public String getVideoId()

功能:获取视频vid

返回值:视频vid

getQualities

public List<String> getQualities()

功能:获取视频支持的清晰度列表。清晰度值见QualityValue类

返回值:视频清晰度列表

setDuration

public void setDuration(int duration)

功能:设置视频时长

参数:视频时长,单位:ms

addQualitypublic void addQuality(String quality, long size)

功能:添加清晰度信息

参数:

  1. quality 清晰度值
  2. size 文件大小

setTitle

public void setTitle(String title)

功能:设置视频标题

参数:视频标题

setStatus

public void setStatus(String status)

功能:设置视频状态

参数:视频状态。

setVideoId

public void setVideoId(String videoId)

功能:设置视频vid

参数:vid

setPostUrl

public void setPostUrl(String postUrl)

功能:设置封面地址

参数:封面地址

getPostUrl

public String getPostUrl()

功能:获取视频封面地址

返回值:封面地址

getSize

public long getSize(String quality)

功能:根据清晰度获取大小

参数:清晰度。

返回值:视频源大小,单位:B

AliyunLiveTimeShift 类

  • 类名: AliyunLiveTimeShift

  • 功能: 直播时移的播放源

  • 成员

成员 功能
setUrl 设置直播时移地址
getUrl 获取直播时移地址
setCoverPath 设置封面地址
getCoverPath 获取封面地址
setTitle 设置标题
getTitle 获取标题
setTimeLineUrl 设置获取时移的地址
getTimeLineUrl 获取时移的地址

AliyunDownloadManager 类

  • 类名:AliyunDownloadManager

  • 功能:视频下载类。最多支持4个视频同时下载,支持断点续传功能。

  • 成员:

成员 功能
getInstance 获取单例
setDownloadInfoListener 设置下载监听事件
addDownloadInfoListener 添加下载监听事件
setDownloadConfig 设置下载配置
prepareDownloadMedia 准备下载信息
addDownloadMedia 添加下载信息
startDownloadMedia 开始下载视频
stopDownloadMedia 结束下载视频
stopDownloadMedias 结束下载多个视频
removeDownloadMedia 移除下载信息
removeDownloadInfoListener 移除下载监听事件
clearDownloadInfoListener 清空下载监听事件
getDownloadingMedias 获取下载中的视频
getUnfinishedDownload 获取没有下载完成的视频信息
setRefreshAuthCallBack 设置刷新Auth回调事件
getRefreshAuthCallBack 获取刷新Auth回调事件
setRefreshStsCallback 设置刷新VidSts回调事件
getRefreshStsCallback 获取刷新VidSts回调事件
setRefreshVidSourceCallback 设置刷新VidSource回调事件
getVidSourceRefreshCallback 获取刷新VidSource回调事件

下面详细介绍一下各成员函数的具体使用:

getInstance

public static AliyunDownloadManager getInstance(Context context)

功能:获取下载管理器的单例

参数:Context :上下文

返回值:下载管理器

setDownloadConfig

public void setDownloadConfig(AliyunDownloadConfig config)

功能:设置下载的配置项。

参数:config: AliyunDownloadConfig 配置,具体见 AliyunDownloadConfig。

prepareDownloadMedia

public void prepareDownloadMedia(AliyunPlayAuth playAuth)

功能:准备下载视频信息。准备成功,回调AliyunDownloadInfoListener中的onPrepare方法。失败则回调onError方法。

参数:playAuth:下载源的信息。当使用PlayAuth的方式进行请求时,为了防止playAuth过期,每次下载的时候需要获取到新的playAuth。调用setRefreshAuthCallBack 设置刷新监听。

prepareDownloadMedia

public void prepareDownloadMedia(AliyunVidSts vidSts)

功能:准备下载视频信息。准备成功,回调AliyunDownloadInfoListener中的onPrepare方法。失败则回调onError方法。

参数:vidSts:下载源的信息。当使用VidSts的方式进行请求时,为了防止VidSts过期,每次下载的时候需要获取到新的VidSts。调用setRefreshStsCallback 设置刷新监听。

addDownloadMedia

public void addDownloadMedia(AliyunDownloadMediaInfo downloadInfo)

功能:添加下载视频信息。准备成功,将需要下载的信息添加到DownloadManager中,准备

参数:playAuth:下载源的信息。当使用PlayAuth的方式进行请求时,为了防止playAuth过期,每次下载的时候需要获取到新的playAuth。调用setRefreshAuthCallBack 设置刷新监听。

startDownloadMedia

public void startDownloadMedia(AliyunDownloadMediaInfo downloadInfo)

功能:开始下载视频。下载开始,回调AliyunDownloadInfoListener中的onStart方法。失败则回调onError方法。等待则回调onWait方法。

参数:downloadInfo:下载对象的信息。开始之前,注意调用setRefreshAuthCallBacksetRefreshStsCallback 设置刷新监听。如果设置了AuthCallback,则认为使用auth方式下载,如果设置了StsCallback,则认为使用sts方式下载。如果不设置,则会报onError的错误。

stopDownloadMedia

public void stopDownloadMedia(AliyunDownloadMediaInfo downloadInfo)

功能:停止下载视频。停止成功,回调AliyunDownloadInfoListener中的onStop方法。

参数:downloadInfo :下载的信息。具体参见下面AliyunDownloadMediaInfo。

stopDownloadMedias

public void stopDownloadMedias(List<AliyunDownloadMediaInfo> downloadInfos)

功能:停止下载多个视频。停止成功,回调AliyunDownloadInfoListener中的onStop方法。

参数:downloadInfo :下载的信息。具体参见下面AliyunDownloadMediaInfo。

getDownloadingMedias

public List<AliyunDownloadMediaInfo> getDownloadingMedias()

功能:获取下载中的视频。是指在Manager中有的信息。

返回值:List :所有的信息。

setDownloadInfoListener

public void setDownloadInfoListener(AliyunDownloadInfoListener listener)

功能:设置下载状态监听事件。可以调用removeDownloadInfoListener移除监听。

参数:listener : 下载状态监听事件。具体见下面 AliyunDownloadInfoListener 说明。

addDownloadInfoListener

public void addDownloadInfoListener(AliyunDownloadInfoListener listener)

功能:添加下载状态监听事件。可以调用removeDownloadInfoListener移除监听。

参数:listener : 下载状态监听事件。具体见下面 AliyunDownloadInfoListener 说明。

removeDownloadInfoListener

public void removeDownloadInfoListener(AliyunDownloadInfoListener listener)

功能:移除下载监听事件。

参数:listener : 下载状态监听事件。具体见下面 AliyunDownloadInfoListener 说明。

clearDownloadInfoListener

public void clearDownloadInfoListener()

功能:清空下载监听事件。

removeDownloadMedia

public void removeDownloadMedia(AliyunDownloadMediaInfo downloadInfo)

功能:移除下载项。

参数:downloadInfo:下载信息。具体见 AliyunDownloadMediaInfo 的说明。

getUnfinishedDownload

public List<AliyunDownloadMediaInfo> getUnfinishedDownload()

功能:获取没有下载完成的视频信息

返回值:没有下载完成的视频信息列表

setRefreshAuthCallBack

public void setRefreshAuthCallBack(AliyunRefreshPlayAuthCallback callback)

功能:设置刷新Auth回调事件。下载模块会在需要的时候回调这个接口获取新的auth信息。作用是避免auth的过期。

参数:callback。回调方法,具体见下文说明。

setRefreshStsCallback

public void setRefreshStsCallback(AliyunRefreshStsCallback callback)

功能:设置刷新VidSts回调事件。下载模块会在需要的时候回调这个接口获取新的vidSts信息。作用是避免vidSts的过期。

参数:callback。回调方法,具体见下文说明。

getRefreshStsCallback

public AliyunRefreshStsCallback getRefreshStsCallback()

功能:获取刷新VidSts回调事件。

getRefreshAuthCallback

public AliyunRefreshAuthCallback getRefreshAuthCallback()

功能:获取刷新Auth回调事件。

setRefreshVidSourceCallback

public void setRefreshVidSourceCallback(AliyunRefreshVidSourceCallback callback)

功能:设置刷新VidSource回调事件。下载模块会在需要的时候回调这个接口获取新的VidSource信息。作用是避免VidSource的过期。

参数:callback。回调方法,具体见下文说明。

getVidSourceRefreshCallback

public AliyunRefreshVidSourceCallback getVidSourceRefreshCallback()

功能:获取刷新VidSource回调事件。

AliyunDownloadInfoListener 接口

  • 接口名:AliyunDownloadInfoListener

  • 功能:下载信息监听接口

  • 事件:

事件名称 参数 说明 返回值
void onUnfinished() List: 异常结束的项 异常结束时回调 void
void onPrepared() List: 可以下载的项 准备成功时回调 void
void onStart() AliyunDownloadMediaInfo :下载项 开始下载时回调 void
void onProgress() AliyunDownloadMediaInfo :下载项
int percent 进度百分比
下载进度更新回调 void
void onStop() AliyunDownloadMediaInfo:下载项 下载停止时回调 void
void onCompletion() AliyunDownloadMediaInfo: 下载项 下载完成时回调 void
void onError() AliyunDownloadMediaInfo:下载项
int code:错误码
String msg:错误信息。具体见下表【Error原因码】。
下载错误时回调 void
void onWait() AliyunDownloadMediaInfo:下载项 下载等待时回调 void

AliyunDownloadConfig 类

  • 类名:AliyunDownloadConfig

  • 功能:下载配置类。

  • 成员:

多数为set get 方法,此处只列出变量。

成员 功能
mDownloadDir 下载目录(如果是sdcard路径,请保证有读写sdcard的权限
mImagePath 加密图片路径
mMaxNums 最大同时下载数

AliyunDownloadMediaInfo 类

  • 类名:AliyunDownloadMediaInfo

  • 功能:下载信息类。

  • 成员:

多数为set get 方法,此处只列出变量。

成员 功能
mVid 视频vid
mQuality 视频清晰度(值见QualityValue)
mProgress 下载进度百分比
mSavePath 视频保存的绝对路径
mTitle 视频标题
mCoverUrl 视频封面地址
mDuration 视频长度
mStatus 视频下载状态(值见Status)
mSize 视频字节数
mFormat 视频格式

AliyunDownloadMediaInfo.Status 类

  • 类名:AliyunDownloadMediaInfo.Status

  • 功能:下载状态枚举类

  • 成员:

枚举名称 说明
Idle 空闲状态
Prepare 准备完成状态
Wait 下载等待状态
Start 下载开始状态
Stop 下载停止状态
Complete 下载完成状态
Error 出错状态

VideoScalingMode 类

  • 类名:VideoScalingMode

  • 功能:屏幕模式类。

  • 成员:

枚举名称 说明
VIDEO_SCALING_MODE_SCALE_TO_FIT 适应大小
VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING 裁剪铺满

AliyunScreenMode 类

  • 类名:AliyunScreenMode

  • 功能:屏幕缩放模式类。

  • 成员:

枚举名称 说明
Small 小屏模式
Full 全屏模式

PlayerState类

  • 类名:PlayerState

  • 功能:播放器状态枚举类。

  • 成员:

枚举名称 说明
Idle 空闲状态
Prepared 准备完成状态
Started 播放状态
Paused 暂停状态
Stopped 停止状态
Released 已释放状态
Error 出错状态
ChangeQuality 切换清晰度状态

QualityValue类

  • 类名:QualityValue

  • 功能:视频清晰度值的定义类。

  • 成员:

值名称 说明
QUALITY_INVALIDATE “” 无效值
QUALITY_FLUENT “FD” 流畅
QUALITY_LOW “LD” 标清
QUALITY_STAND “SD” 高清
QUALITY_HIGH “HD” 超清
QUALITY_2K “2K” 2k
QUALITY_4K “4K” 4k
QUALITY_ORIGINAL “OD” 原画

OnPreparedListener接口

  • 类名:OnPreparedListener

  • 功能:视频准备完成的监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onPrepared() 视频准备成功。失败则走OnErrorListener回调 void

OnFirstFrameStartListener接口

  • 类名:OnFirstFrameStartListener

  • 功能:首帧开始播放的监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onFirstFrameStart() 首帧开始播放 void

OnSeekCompleteListener接口

  • 类名:OnSeekCompleteListener

  • 功能:拖动完成监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onSeekComplete() 拖动完成 void

OnChangeQualityListener接口

  • 类名:OnChangeQualityListener

  • 功能:切换清晰度监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onChangeQualitySuccess(String finalQuality) finalQuality 最终切换的清晰度值 切换清晰度成功 void
void onChangeQualityFail(int code, String msg) code:错误码
msg:错误信息
切换清晰度失败。 void

OnStoppedListener 接口

  • 类名:OnStoppedListener

  • 功能:视频播放停止监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onStopped() 视频播放停止事件 void

OnCompletionListener 接口

  • 类名:OnCompletionListener

  • 功能:视频播放结束监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onCompletion() 视频播放完成 void

OnLoadingListener接口

  • 类名:OnLoadingListener

  • 功能:视频加载缓冲监听事件。

  • 成员:

事件名称 参数 说明 返回值
void onLoadStart() 视频开始缓冲 void
void onLoadEnd() 视频缓冲结束 void
void onLoadProgress(int percent) precent 缓冲进度百分比 视频缓冲进度百分比 void

OnVideoSizeChangedListener接口

  • 类名:OnVideoSizeChangedListener

  • 功能:视频画面大小变化事件。

  • 成员:

事件名称 参数 说明 返回值
void onVideoSizeChanged(int width, int height); width:视频的宽
height: 视频的高
视频画面变化回调 void

OnErrorListener接口

  • 类名:OnErrorListener

  • 功能:播放器出错事件。

  • 成员:

事件名称 参数 说明 返回值
void onError(int arg0, int arg1) arg0 出错的原因。值见下表【Error原因码】
arg1 出错的场景。值见下表【Error场景码】
播放器出错回调 void

OnInfoListener接口

  • 类名:OnInfoListener

  • 功能:播放器信息事件。

  • 成员:

事件名称 参数 说明 返回值
void onInfo(int arg0, int arg1) arg0 场景类型
arg1 场景的值
两者描述见下表【Info 信息表】
播放器信息回调 void

LockPortraitListener接口

  • 类名:LockPortraitListener

  • 功能:播放器锁定竖屏事件。

  • 成员:

事件名称 参数 说明 返回值
void onLockScreenMode(int screenMode) screenMode 屏幕模式:1:全屏。0:小屏 播放器竖屏模式改变回调 void

OnRePlayListener接口

  • 类名:OnRePlayListener

  • 功能:播放器重播事件。

  • 成员:

事件名称 参数 说明 返回值
void onReplaySuccess() 播放器重播成功回调 void

setOnCircleStartListener接口

  • 类名:setOnCircleStartListener

  • 功能:播放器循环播放开始事件。

  • 成员:

事件名称 参数 说明 返回值
void onCircleStart() 播放器循环播放开始时回调 void

OnAutoPlayListener接口

  • 类名:OnAutoPlayListener

  • 功能:播放器自动播放开始事件。

  • 成员:

事件名称 参数 说明 返回值
void onAutoPlayStarted() 播放器自动播放开始回调 void

AliyunRefreshPlayAuthCallback

  • 类名:AliyunRefreshPlayAuthCallback

  • 功能:刷新Auth信息回调事件。

注意:此回调已经在非ui线程了,所以请求网络时,不能在新线程中处理,防止出现异步操作。

  • 成员:
事件名称 参数 说明 返回值
AliyunPlayAuth refreshPlayAuth() String vid:视频id
String quality:当前清晰度
String format:格式
String title:标题
boolean encript:是否加密
播放器自动播放开始回调 AliyunPlayAuth 新的PlayAuth信息

AliyunRefreshStsCallback

  • 类名:AliyunRefreshStsCallback

  • 功能:刷新VidSts信息回调事件。

注意:此回调已经在非ui线程了,所以请求网络时,不能在新线程中处理,防止出现异步操作。

  • 成员:
事件名称 参数 说明 返回值
AliyunVidSts refreshSts() String vid:视频id
String quality:当前清晰度
String format:格式
String title:标题
boolean encript:是否加密
播放器自动播放开始回调 AliyunVidSts 新的VidSts信息

OnUrlTimeExpiredListener

  • 类名:OnUrlTimeExpiredListener

  • 功能:播放过程中鉴权即将过期时提供的回调消息(过期前一分钟回调)

  • 成员:

事件名称 参数 说明 返回值
void onUrlTimeExpired String vid:视频id
String quality:当前清晰度
播放地址即将过期开始回调

OnTimeExpiredErrorListener

  • 类名:OnTimeExpiredErrorListener

  • 功能:请求源过期的回调。

  • 成员:

事件名称 参数 说明 返回值
void onTimeExpiredError 播放源过期时回调

OnSeekLiveCompletionListener

  • 类名:OnSeekLiveCompletionListener

  • 功能:时移seek结束回调。

  • 成员:

事件名称 参数 说明 返回值
void onSeekLiveCompletion playTime:实际播放的时间 时移播放seek成功后回调

OnTimeShiftUpdaterListener

  • 类名:OnTimeShiftUpdaterListener

  • 功能:时移区间段更新回调。

  • 成员:

事件名称 参数 说明 返回值
void onUpdater currentTime:当前直播时间
shiftStartTime:时移区间的开始时间
shiftEndTime:时移区间的结束事件
时移区间段更新回调,大约是1分钟更新一次

AliyunRefreshVidSourceCallback

  • 类名:AliyunRefreshVidSourceCallback

  • 功能:刷新VidSource信息回调事件。

注意:此回调已经在非ui线程了,所以请求网络时,不能在新线程中处理,防止出现异步操作。

  • 成员:
事件名称 参数 说明 返回值
AliyunVidSts refreshVidSource() String vid:视频id
String quality:当前清晰度
String format:格式
String title:标题
boolean encript:是否加密
播放器自动播放开始回调 AliyunVidSts 新的VidSts信息

Error原因码

onError回调中的第一个参数的值及其含义。

值名称 说明
ALIVC_ERR_INVALID_PARAM 4001 参数非法,请检查参数
ALIVC_ERR_AUTH_EXPIRED 4002 鉴权过期,请重新获取新的鉴权信息
ALIVC_ERR_NOTAUTH 4017 播放鉴权失败,请重新获取鉴权信息
ALIVC_ERR_INVALID_INPUTFILE 4003 无效的输入,请检查输入地址或者网络链接
ALIVC_ERR_MEDIA_UNSUPPORTED 4018 媒体源不支持或者无效
ALIVC_ERR_NO_SUPPORT_CODEC 4019 视频编码格式不支持
ALIVC_ERROR_NO_INPUTFILE 4004 没有设置视频源或视频地址不存在
ALIVC_ERR_READ_DATA_FAILED 4005 读取视频源失败
ALIVC_ERR_READ_METADATA_FAILED 4006 读取元数据失败
ALIVC_ERR_PLAY_FAILED 4007 播放出错
ALIVC_ERROR_LOADING_TIMEOUT 4008 视频加载超时,请检查网络状况
ALIVC_ERROR_REQUEST_DATA_ERROR 4009 请求数据错误
ALIVC_ERROR_ENCRYPTED_VIDEO_UNSUPORTED 4010 不支持加密视频播放
ALIVC_ERROR_VIDEO_FORMAT_UNSUPORTED 4011 视频格式不支持
ALIVC_ERROR_PLAYAUTH_PARSE_FAILED 4012 playAuth解析失败
ALIVC_ERROR_DECODE_FAILED 4013 视频解码失败
ALIVC_ERR_NO_NETWORK 4014 当前网络不可用
ALIVC_ERR_MEDIA_ABORTED 4015 获取数据被中止
ALIVC_ERR_LOADING_FAILED 4016 网络错误加载视频视频
ALIVC_ERR_UNKNOWN 4400 未知错误
ALIVC_ERR_REQUEST_ERROR 4500 服务端请求错误
ALIVC_ERR_DATA_ERROR 4501 服务器返回数据错误
ALIVC_ERR_QEQUEST_SAAS_SERVER_ERROR 4502 请求saas服务器错误
ALIVC_ERR_QEQUEST_MTS_SERVER_ERROR 4503 请求mts服务器错误
ALIVC_ERR__SERVER_INVALID_PARAM 4504 服务器返回参数无效,请检查参数
ALIVC_ERR_ILLEGALSTATUS 4021 非法的播放器状态
ALIVC_ERR_NO_VIEW 4022 没有设置显示窗口,请先设置播放视图
ALIVC_ERR_NO_MEMORY 4023 内存不足
ALIVC_ERR_DOWNLOAD_NO_NETWORK 4101 视频下载时连接不到服务器
ALIVC_ERR_DOWNLOAD_NETWORK_TIMEOUT 4102 视频下载时网络超时
ALIVC_ERR_DOWNLOAD_QEQUEST_SAAS_SERVER_ERROR 4103 下载请求saas服务器错误
ALIVC_ERR_DOWNLOAD_QEQUEST_MTS_SERVER_ERROR 4104 下载请求mts服务器错误
ALIVC_ERR_DOWNLOAD_SERVER_INVALID_PARAM 4105 下载服务器返回参数无效,请检查
ALIVC_ERR_DOWNLOAD_INVALID_INPUTFILE 4106 视频下载流无效或地址过期
ALIVC_ERR_DOWNLOAD_NO_ENCRYPT_FILE 4107 未找到加密文件,请从控制台下载加密文件并集成
ALIVC_ERR_DONWNLOAD_GET_KEY 4108 获取秘钥失败,请检查秘钥文件
ALIVC_ERR_DOWNLOAD_INVALID_URL 4109 下载地址无效
ALIVC_ERR_DONWLOAD_NO_SPACE 4110 磁盘空间不够
ALIVC_ERR_DOWNLOAD_INVALID_SAVE_PATH 4111 视频文件保存路径不存在,请重新设置
ALIVC_ERR_DOWNLOAD_NO_PERMISSION 4112 当前视频不可下载
ALIVC_ERR_DOWNLOAD_MODE_CHANGED 4113 下载模式改变无法继续下载
ALIVC_ERR_DOWNLOAD_ALREADY_ADDED 4114 当前视频已经添加到下载项,请避免重复添加
ALIVC_ERR_DOWNLOAD_NO_MATCH 4115 未找到合适的下载项,请先添加

Error场景码

onError回调中的第二个参数的值及其含义。

值名称 说明
k0PrepareFailed 2 视频准备失败
k0OpenFailed 5 文件打开失败
k0LoadFailed 8 视频加载失败
k0LoadingTimeout 23 视频缓冲超时

Info 信息表

onInfo 回调中的参数的值及其含义。

arg0值名称 arg1值 说明
MEDIA_INFO_BUFFERING_START 0 视频缓冲开始
MEDIA_INFO_BUFFERING_PROGRESS 视频的缓冲百分比 视频缓冲进度
MEDIA_INFO_BUFFERING_END 0 视频缓冲结束
MEDIA_INFO_VIDEO_RENDERING_START 0 视频首帧开始播放