You need to enable JavaScript to run this app.
导航

API 详情

最近更新时间2024.04.19 14:57:37

首次发布时间2023.03.16 14:24:57

VeLivePlayer
public abstract class VeLivePlayer

直播播放器。

静态函数

返回名称
static StringgetVersion
static voidsetLogLevel

成员函数

返回名称
abstract voidsetConfig
abstract voidsetObserver
abstract voidsetRenderFillMode
abstract voidsetSurfaceHolder
abstract voidsetSurface
abstract voidsetPlayUrl
abstract voidsetPlayStreamData
abstract voidplay
abstract voidpause
abstract voidstop
abstract voiddestroy
abstract booleanswitchResolution
abstract booleanisPlaying
abstract voidsetPlayerVolume
abstract voidsetMute
abstract booleanisMute
abstract voidsetUrlHostIP
abstract voidsetProperty
abstract intsnapshot
abstract voidenableVideoFrameObserver
abstract voidenableAudioFrameObserver
abstract voidsetRenderRotation
abstract voidsetRenderMirror
abstract voidsetEnableSuperResolution
abstract voidsetEnableSharpen

函数说明

getVersion

public static String getVersion()

获取播放器 SDK 的版本号。

返回值

播放器 SDK 版本号。

setLogLevel

public static void setLogLevel(VeLivePlayerLogConfig.VeLivePlayerLogLevel logLevel)

设置打印的日志级别。

传入参数

参数名类型说明
logLevelVeLivePlayerLogConfig.VeLivePlayerLogLevel日志级别,详情请参见 VeLivePlayerLogLevel

setConfig

public abstract void setConfig(VeLivePlayerConfiguration config)

初始化播放器,用于设置是否开启 SEI 消息、是否开启硬件解码和是否开启本地 DNS 预解析等配置信息。

传入参数

参数名类型说明
configVeLivePlayerConfiguration播放器配置信息,详情请参见 VeLivePlayerConfiguration

注意

需要在调用 play 开始播放之前,调用本方法进行播放器的初始化。

setObserver

public abstract void setObserver(VeLivePlayerObserver observer)

设置播放器回调,用于监听播放器 VeLivePlayer 的播放错误、播放状态、音视频首帧渲染状态和清晰度档位信息等回调事件。

传入参数

参数名类型说明
observerVeLivePlayerObserver播放器的事件回调对象。详情请参见 VeLivePlayerObserver

注意

需要在调用 play 开始播放之前,调用本方法设置回调。

setRenderFillMode

public abstract void setRenderFillMode(VeLivePlayerFillMode fillMode)

设置播放器画面的填充模式。

传入参数

参数名类型说明
fillModeVeLivePlayerFillMode设置 SurfaceView 的填充模式,默认值为 VeLivePlayerFillModeAspectFill,详情请参见 VeLivePlayerFillMode

注意

  • 如果用于起播设置,需要在调用 play 开始播放之前,调用本方法设置视频的填充模式。
  • 如果用于调节填充模式,可以在播放过程中调用本方法动态调节视频的填充模式。

setSurfaceHolder

public abstract void setSurfaceHolder(SurfaceHolder surfaceHolder)

使用 SurfaceView 播放视频时,通过设置 SurfaceHolder 对象完成视频图像的渲染和播放。

传入参数

参数名类型说明
surfaceHolderSurfaceHolderSurfaceHolder 对象。

注意

如果同时调用 setSurfaceHolder 和 setSurface 设置视频播放画面的 Surface,播放器会优先使用 surfaceHolder 的配置。

setSurface

public abstract void setSurface(Surface surface)

使用 SurfaceView 或 TextureView 播放视频时,通过设置 Surface 对象完成视频图像的渲染和播放。

传入参数

参数名类型说明
surfaceSurfacesurface 对象的类型。

注意

如果同时调用 setSurfaceHolder 和 setSurface 设置视频播放画面的 Surface,播放器会优先使用 surfaceHolder 的配置。

setPlayUrl

public abstract void setPlayUrl(String url)

设置单个直播播放地址。

传入参数

参数名类型说明
urlString直播播放地址。

注意

需要在调用 play 开始播放之前,调用本方法设置单个直播播放地址。

setPlayStreamData

public abstract void setPlayStreamData(VeLivePlayerStreamData streamData)

多路流信息配置。例如,您需要使用 ABR、手动切档和主备流等依赖多路流的功能,可以调用本方法进行配置。

传入参数

参数名类型说明
streamDataVeLivePlayerStreamData多路流信息配置,详情请参见 VeLivePlayerStreamData

注意

需要在调用 play 开始播放之前,调用本方法设置多路流信息。

play

public abstract void play()

开始/恢复播放。

注意

调用本方法,在播放器完成拉流准备和首帧渲染播放后,都会触发 onPlayerStatusUpdate 播放器状态回调。

pause

public abstract void pause()

暂停播放。

注意

调用本方法暂停播放后,会触发 onPlayerStatusUpdate 播放器状态回调。

stop

public abstract void stop()

停止播放,不销毁播放器。

注意

调用本方法停止播放后,会触发 onPlayerStatusUpdate 播放器状态回调。

destroy

public abstract void destroy()

停止播放,并销毁播放器。

switchResolution

public abstract boolean switchResolution(VeLivePlayerResolution resolution)

切换播放的清晰度档位。

传入参数

参数名类型说明
resolutionVeLivePlayerResolution设置清晰度的目标档位,详情请参见 VeLivePlayerResolution

返回值

  • true:成功;
  • false:失败。

注意

  • 需要在调用 setPlayStreamData 设置多档位后,调用本方法切换播放器的清晰度档位。
  • 调用本方法成功切换档位后,会触发清晰度档位变化 onResolutionSwitch 回调。

isPlaying

public abstract boolean isPlaying()

检查播放器是否正在播放。

返回值

是否正在播放。

  • true:正在播放;
  • false:未播放。

setPlayerVolume

public abstract void setPlayerVolume(float volume)

设置播放器音量。

传入参数

参数名类型说明
volumefloat音量大小,默认值为 1.0。取值范围为 0.0~1.0。

setMute

public abstract void setMute(boolean mute)

设置是否静音播放。

传入参数

参数名类型说明
muteboolean是否开启静音播放,默认值为 false。
  • true:开启;
  • false:关闭。

isMute

public abstract boolean isMute()

获取是否处于静音状态。

返回值

是否处于静音状态。

  • true:静音;
  • false:未静音。

setUrlHostIP

public abstract void setUrlHostIP(Map<String, List<String>> hostIpMap)

设置域名和服务器的 IP 地址映射关系。

传入参数

参数名类型说明
hostIpMapMap<String, List>域名和服务器 IP 地址的映射关系列表。其中 Map 的 Key 是域名,Value 是 List 类型,表示该域名对应的服务器 IP 地址列表。

setProperty

public abstract void setProperty(
    String key,
    Object value
)

设置播放器高级配置。高级配置包括离屏渲染设置、缓冲区最大时长、ABR 码率自适应算法类型等,如需了解详细信息,请联系火山引擎技术支持

传入参数

参数名类型说明
keyString高级配置的参数名。
valueObject参数对应的参数值。

snapshot

public abstract int snapshot()

视频截图。

返回值

注意

  • 本方法仅在视频状态为播放时生效。
  • 调用本方法截图成功后,会触发 onSnapshotComplete 回调,回调消息中包含截图的 Bitmap 对象。

enableVideoFrameObserver

public abstract void enableVideoFrameObserver(
    boolean enable,
    VeLivePlayerPixelFormat pixelFormat,
    VeLivePlayerVideoBufferType bufferType
)

设置视频帧回调。

传入参数

参数名类型说明
enableboolean是否开启视频帧回调,默认值为 false。
  • true:开启;
  • false:关闭。
pixelFormatVeLivePlayerPixelFormat回调的视频帧像素格式,详情请参见 VeLivePlayerPixelFormat
bufferTypeVeLivePlayerVideoBufferType回调的视频数据封装格式,详情请参见 VeLivePlayerVideoBufferType

注意

  • 您可以在使用外部渲染的场景下调用本方法,订阅视频帧的解码数据。
  • 调用本方法后,会触发 onRenderVideoFrame 回调,回调消息中包含每个视频帧的详细数据。
  • 如果您使用外部渲染,需要保证音视频同步。

enableAudioFrameObserver

public abstract void enableAudioFrameObserver(
    boolean enable,
    boolean enableRendering
)

设置音频帧回调。

传入参数

参数名类型说明
enableboolean是否开启音频帧回调,默认值为 false。
  • true:开启;
  • false:关闭。
enableRenderingboolean是否开启播放器渲染。默认值为 false。
  • true:开启;
  • false:关闭。

注意

  • 您可以在使用外部渲染的场景下调用本方法,订阅音频帧的解码数据。
  • 调用本方法后,会触发 onRenderAudioFrame 回调,回调消息中包含每个音频帧的详细数据。
  • 如果您使用外部渲染,需要保证音视频同步。

setRenderRotation

public abstract void setRenderRotation(VeLivePlayerRotation rotation)

设置视频顺时针旋转角度。

传入参数

参数名类型说明
rotationVeLivePlayerRotation视频旋转角度,默认关闭旋转,详情请参见 VeLivePlayerRotation

注意

  • 支持在播放前和播放中动态修改视频旋转角度。
  • 每次调用本方法,播放器都将基于图像的原始角度进行旋转。
  • 当同时使用旋转和镜像功能,播放器会先进行镜像,再进行旋转。

setRenderMirror

public abstract void setRenderMirror(VeLivePlayerMirror mirror)

设置视频镜像。

传入参数

参数名类型说明
mirrorVeLivePlayerMirror视频镜像,默认关闭镜像,详情请参见 VeLivePlayerMirror

注意

  • 支持在播放前和播放中动态修改视频镜像方式。
  • 每次调用本方法,播放器都将基于原始图像进行镜像。
  • 当同时使用旋转和镜像功能,播放器会先进行镜像,再进行旋转。

setEnableSuperResolution

public abstract void setEnableSuperResolution(boolean enable)

设置是否开启超分。您需要联系火山引擎技术支持开通超分功能后才可使用该功能。

传入参数

参数名类型说明
enableboolean是否开启超分。默认值为 false。
  • true:开启;
  • false:关闭。

注意

  • 在首帧回调后,调用该接口开启超分。
  • 支持播放中调用该接口动态开启和关闭超分。
  • 如果机型、分辨率和帧率不符合限制,将无法开启超分,并触发 onStreamFailedOpenSuperResolution 回调。

setEnableSharpen

public abstract void setEnableSharpen(boolean enable)

设置是否开启视频锐化。

传入参数

参数名类型说明
enableboolean是否开启视频锐化,默认值为 false
  • true:开启;
  • false:关闭。

VeLiveCommon
public class com.ss.videoarch.velivecommon.VeLiveCommon

视频直播通用的公共配置类,提供 HTTPDNS 服务鉴权信息配置和域名解析的功能等。

静态函数

返回名称
static voidsetVeHttpDNSAuth
static voidprefetchDomains

函数说明

setVeHttpDNSAuth

public static void com.ss.videoarch.velivecommon.VeLiveCommon.setVeHttpDNSAuth(
    Context context,
    String serverID,
    String key
)

该方法用来设置使用火山引擎 HTTPDNS 服务时需要的鉴权信息。

传入参数

参数名类型说明
contextContext应用程序上下文对象,提供与应用程序环境相关的信息和功能。
serverIDString移动解析 HTTPDNS 的 Service ID;
keyString移动解析 HTTPDNS 的 Secret Key。

prefetchDomains

public static void com.ss.videoarch.velivecommon.VeLiveCommon.prefetchDomains(List<String> domains)

该方法用来解析域名,并将解析结果存储在缓存中。

传入参数

参数名类型说明
domainsList<String>待解析的域名列表。