public interface VeLivePlayerObserver
播放器事件回调。
void onError( VeLivePlayer player, VeLivePlayerError error )
播放器错误信息回调,播放器出现错误时,触发回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
error | VeLivePlayerError | 错误信息,详情请参见 VeLivePlayerError 。 |
void onFirstVideoFrameRender( VeLivePlayer player, boolean isFirstFrame )
视频首帧渲染事件回调。视频首帧渲染成功,或播放过程中发生重试,重试后的第一个视频帧渲染成功,均会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
isFirstFrame | boolean | 渲染成功的是否为视频首帧。
|
void onFirstAudioFrameRender( VeLivePlayer player, boolean isFirstFrame )
音频首帧渲染事件回调。音频首帧渲染成功,或播放过程中发生重试,重试后的第一个音频帧渲染成功,均会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
isFirstFrame | boolean | 渲染成功的是否为音频首帧。
|
void onStallStart(VeLivePlayer player)
播放卡顿开始回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
void onStallEnd(VeLivePlayer player)
播放卡顿结束回调。音频缓冲区达到起播条件且开始播放后,触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
void onVideoRenderStall( VeLivePlayer player, long stallTime )
视频渲染卡顿回调。视频渲染发生卡顿时,触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
stallTime | long | 视频渲染卡顿时长,单位为 ms。 |
void onAudioRenderStall( VeLivePlayer player, long stallTime )
音频渲染卡顿回调。音频渲染发生卡顿时,触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
stallTime | long | 音频渲染卡顿时长,单位为 ms。 |
void onResolutionSwitch( VeLivePlayer player, VeLivePlayerResolution resolution, VeLivePlayerError error, VeLivePlayerResolutionSwitchReason reason )
清晰度档位变化回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
resolution | VeLivePlayerResolution | 切换后的清晰度档位,详情请参见 VeLivePlayerResolution 。 |
error | VeLivePlayerError | 切换清晰度档位时,是否发生错误,详情请参见 VeLivePlayerError 。 |
reason | VeLivePlayerResolutionSwitchReason | 清晰度档位切换的原因,详情请参见 VeLivePlayerResolutionSwitchReason 。 |
void onVideoSizeChanged( VeLivePlayer player, int width, int height )
视频分辨率变化回调。视频大小发生变化时,触发回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
width | int | 变化后的视频宽度,单位为 px。 |
height | int | 变化后的视频高度,单位为 px。 |
void onReceiveSeiMessage( VeLivePlayer player, String message )
SEI 信息回调。当播放器 SDK 接收到 SEI 信息时,触发回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
message | String | SEI 信息。 |
void onMainBackupSwitch( VeLivePlayer player, VeLivePlayerStreamType streamType, VeLivePlayerError error )
主备流切换回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
streamType | VeLivePlayerStreamType | 切换后的流类型为主路流或备路流,详情请参见 VeLivePlayerStreamType 。 |
error | VeLivePlayerError | 触发主备流切换的原因,详情请参见 VeLivePlayerError 。 |
void onPlayerStatusUpdate( VeLivePlayer player, VeLivePlayerStatus status )
播放状态发生变化时,触发回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
status | VeLivePlayerStatus | 当前播放器的状态,详情请参见 VeLivePlayerStatus 。 |
void onStatistics( VeLivePlayer player, VeLivePlayerStatistics statistics )
播放信息周期性回调。播放器 SDK 会周期性地回调本方法,您可以通过本方法获取当前播放器的播放地址、码率和帧率等信息。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
statistics | VeLivePlayerStatistics | 播放器周期性回调的统计信息,详情请参见 VeLivePlayerStatistics 。 |
void onSnapshotComplete( VeLivePlayer player, Bitmap bitmap )
截图成功回调。当播放器调用 snapshot 截图成功后,会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
bitmap | Bitmap | 截图的 Bitmap 对象。 |
void onRenderVideoFrame( VeLivePlayer player, VeLivePlayerVideoFrame videoFrame )
视频帧回调。调用 enableVideoFrameObserver 开启视频帧解析回调后,当播放器成功解码视频帧时,会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
videoFrame | VeLivePlayerVideoFrame | 视频帧数据,包含像素格式、封装格式、视频宽高等信息,详情请参见 VeLivePlayerVideoFrame 。 |
注意
如果自定义渲染使用纹理格式,建议在视频帧回调线程中执行渲染操作。
void onRenderAudioFrame( VeLivePlayer player, VeLivePlayerAudioFrame audioFrame )
音频帧回调。调用 enableAudioFrameObserver 开启音频帧解析回调后,当播放器成功解码音频帧时,会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
audioFrame | VeLivePlayerAudioFrame | 音频数据,详情请参见 VeLivePlayerAudioFrame 。 |
注意
回调的音频帧数据为 float32 格式,大端字节序存储。
void onStreamFailedOpenSuperResolution( VeLivePlayer player, VeLivePlayerError error )
超分开启失败。调用 setEnableSuperResolution 开启超分后,当播放器不支持超分开启或者超分处理出错时,会触发此回调。
传入参数
参数名 | 类型 | 说明 |
---|---|---|
player | VeLivePlayer | 触发该事件回调的播放器对象。 |
error | VeLivePlayerError | 超分开启失败原因,错误码请参见 VeLivePlayerErrorCode 。 |