ARMediaPlayerDelegate

最近更新时间:2022-09-20 05:17:40

概览

ARMediaPlayerDelegate 接口类采用 Delegate 方法用于向 App 发送回调通知。
SDK 会通过代理方法 ARMediaPlayerDelegate 向 App 上报一些运行时的事件。

核心事件回调

didChangedToState

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didChangedToState:(ARMediaPlayerState)state error:(ARMediaPlayerError)error;

报告播放器状态改变

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

参数描述
playerKitARMediaPlayer
state新的播放状态,详见 ARMediaPlayerState
error播放器错误码,详见 ARMediaPlayerError

didChangedToPosition

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didChangedToPosition:(NSInteger)position;

报告当前播放进度

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

参数描述
playerKitARMediaPlayer
position当前播放进度 (秒)

didOccurEvent

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didOccurEvent:(ARMediaPlayerEvent)event;

报告定位播放的结果

参数描述
playerKitARMediaPlayer
event定位播放的结果,详见 ARMediaPlayerEvent

didReceiveData

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit metaDataType:(ARMediaPlayerMetaDataType)type didReceiveData:(NSString *)data length:(NSInteger)length;

报告已获取媒体附属信息

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

参数描述
playerKitARMediaPlayer
type媒体附属信息数据类型,详见 ARMediaPlayerMetaDataType
data具体数据,用户自定义格式数据
length数据长度(字节)

didReceiveVideoFrame

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didReceiveVideoFrame:(CVPixelBufferRef)pixelBuffer;

已获取视频帧回调

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

参数描述
playerKitARMediaPlayer
pixelBuffer视频帧信息

didReceiveAudioFrame

- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didReceiveAudioFrame:(CMSampleBufferRef)audioFrame;

已获取音频帧回调

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

参数描述
playerKitARMediaPlayer
audioFrame音频帧信息