概览
ARMediaPlayerDelegate 接口类采用 Delegate 方法用于向 App 发送回调通知。
SDK 会通过代理方法 ARMediaPlayerDelegate 向 App 上报一些运行时的事件。
核心事件回调
didChangedToState
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didChangedToState:(ARMediaPlayerState)state error:(ARMediaPlayerError)error;
报告播放器状态改变
当播放器状态改变时,SDK 会触发该回调,向你报告新的播放状态。
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
state | 新的播放状态,详见 ARMediaPlayerState |
error | 播放器错误码,详见 ARMediaPlayerError |
didChangedToPosition
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didChangedToPosition:(NSInteger)position;
报告当前播放进度
播放媒体文件时,SDK 每隔 1 秒会自动触发该回调,向你报告当前播放进度。
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
position | 当前播放进度 (秒) |
didOccurEvent
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didOccurEvent:(ARMediaPlayerEvent)event;
报告定位播放的结果
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
event | 定位播放的结果,详见 ARMediaPlayerEvent |
didReceiveData
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit metaDataType:(ARMediaPlayerMetaDataType)type didReceiveData:(NSString *)data length:(NSInteger)length;
报告已获取媒体附属信息
当获取到媒体附属信息时,SDK 会触发该回调,向你报告媒体附属信息的数据类型和具体数据。
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
type | 媒体附属信息数据类型,详见 ARMediaPlayerMetaDataType |
data | 具体数据,用户自定义格式数据 |
length | 数据长度(字节) |
didReceiveVideoFrame
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didReceiveVideoFrame:(CVPixelBufferRef)pixelBuffer;
已获取视频帧回调
每次接收到一帧视频帧时,都会触发该回调,报告视频帧信息。
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
pixelBuffer | 视频帧信息 |
didReceiveAudioFrame
- (void)rtcMediaPlayer:(ARMediaPlayer *_Nonnull)playerKit didReceiveAudioFrame:(CMSampleBufferRef)audioFrame;
已获取音频帧回调
每次接收到一帧音频帧时,都会触发该回调,报告音频帧信息。
参数 | 描述 |
---|---|
playerKit | ARMediaPlayer |
audioFrame | 音频帧信息 |