AgoraMediaPlayerDelegate Category Reference

Conforms to NSObject
Declared in AgoraMediaPlayerKit.h

Overview

AgoraMediaPlayerDelegate 类采用 delegate 方法用于向 App 发送回调通知。

MediaPlayer 会通过代理方法 AgoraMediaPlayerDelegate 向 App 上报一些运行时的事件。

– AgoraMediaPlayer:didChangedToState:error:

报告播放器状态改变

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didChangedToState:(AgoraMediaPlayerState)state error:(AgoraMediaPlayerError)error

Parameters

playerKit

AgoraMediaPlayer

state

新的播放状态,详见 AgoraMediaPlayerState

error

播放器错误码,详见 AgoraMediaPlayerError

Discussion

当播放器状态改变时,Player 会触发该回调,向你报告新的播放状态。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didChangedToPosition:

报告当前播放进度

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didChangedToPosition:(NSInteger)position

Parameters

playerKit

AgoraMediaPlayer

position

当前播放进度 (毫秒)

Discussion

播放媒体文件时,Player 每隔 1 秒会自动触发该回调,向你报告当前播放进度。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didOccurEvent:

报告播放器的事件

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didOccurEvent:(AgoraMediaPlayerEvent)event

Parameters

playerKit

AgoraMediaPlayer

event

播放器发生的事件,详见 AgoraMediaPlayerEvent

Discussion

  • 调用 seekToPosition 定位播放后,MediaPlayer Kit 会触发该回调,报告定位播放的结果。
  • 调用 selectAudioTrack 设置使用的音轨后,MediaPlayer Kit 会触发该回调,报告音轨已改变。
  • 调用 switchSrc 切换正在播放的媒体资源后,MediaPlayer Kit 会触发该回调,报告切换的结果。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:metaDataType:didReceiveData:length:

报告已获取媒体附属信息

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit metaDataType:(AgoraMediaPlayerMetaDataType)type didReceiveData:(NSString *)data length:(NSInteger)length

Parameters

playerKit

AgoraMediaPlayer

type

媒体附属信息数据类型,详见 AgoraMediaPlayerMetaDataType

data

具体数据,用户自定义格式数据

length

数据长度(字节)

Discussion

当获取到媒体附属信息时,Player 会触发该回调,向你报告媒体附属信息的数据类型和具体数据。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didReceiveVideoFrame:

已获取视频帧回调

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didReceiveVideoFrame:(CVPixelBufferRef)pixelBuffer

Parameters

playerKit

AgoraMediaPlayer

pixelBuffer

视频帧信息

Discussion

每次接收到一帧视频帧时,都会触发该回调,报告视频帧信息。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didReceiveAudioFrame:

已获取音频帧回调

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didReceiveAudioFrame:(CMSampleBufferRef)audioFrame

Parameters

playerKit

AgoraMediaPlayer

audioFrame

音频帧信息

Discussion

每次接收到一帧音频帧时,都会触发该回调,报告音频帧信息。

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didPlayBufferUpdated:

报告当前缓冲数据能播放的时间

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didPlayBufferUpdated:(NSInteger)playCachedBuffer

Parameters

playerKit

AgoraMediaPlayer

playCachedBuffer

当前缓冲的数据能支持的播放时间 (毫秒)

Discussion

播放在线媒体资源的过程中,Player 会每隔 1 秒触发一次该回调,报告当前缓冲的数据能支持的播放时间。

  • 当缓冲数据支持的播放时间小于阈值(默认为 0)时,Player 返回 AgoraMediaPlayerEventBufferLow(6)
  • 当缓冲数据支持的播放时间大于阈值(默认为 0)时,Player 返回 AgoraMediaPlayerEventBufferRecover(7)

Declared In

AgoraMediaPlayerKit.h

– AgoraMediaPlayer:didPreloadEvent:

报告预加载媒体资源的事件

- (void)AgoraMediaPlayer:(AgoraMediaPlayer *_Nonnull)playerKit didPreloadEvent:(AgoraMediaPlayerPreloadEvent)event

Parameters

playerKit

AgoraMediaPlayer

event

预加载媒体资源时发生的事件,详见 AgoraMediaPlayerPreloadEvent

Declared In

AgoraMediaPlayerKit.h