ZegoLivePlayerDelegate Protocol Reference
Conforms to | NSObject |
---|---|
Declared in | ZegoLiveRoomApi-Player.h |
– onPlayStateUpdate:streamID:
required method
播放流状态更新通知
- (void)onPlayStateUpdate:(int)stateCode streamID:(NSString *)streamID
Parameters
stateCode |
状态码,0 为无错误。更多错误码详见 enum ZegoErrorCode |
---|---|
streamID |
播放流 ID |
Discussion
- 调用 [ZegoLiveRoomApi (Player) -startPlayingStream:inView:] 或 [ZegoLiveRoomApi (Player) -startPlayingStream:inView:params:] 拉流成功后,会收到此回调通知。
Declared In
ZegoLiveRoomApi-Player.h
– onInviteJoinLiveRequest:fromUserID:fromUserName:roomID:
收到主播端的邀请连麦请求
- (void)onInviteJoinLiveRequest:(int)seq fromUserID:(NSString *)userId fromUserName:(NSString *)userName roomID:(NSString *)roomID
Parameters
seq |
连麦请求序列号,标识当次连麦请求 |
---|---|
userId |
来源用户 ID |
userName |
来源用户名 |
roomID |
房间 ID |
Discussion
主播端调用 [ZegoLiveRoomApi (Publisher) -inviteJoinLive:responseBlock:] 邀请观众连麦后,观众端会收到此通知。建议在此通知中,调用 [ZegoLiveRoomApi (Player) -respondInviteJoinLiveReq:result:] 回应邀请连麦请求
Declared In
ZegoLiveRoomApi-Player.h
– onEndJoinLiveCommad:userName:roomID:
收到结束连麦信令
- (void)onEndJoinLiveCommad:(NSString *)fromUserId userName:(NSString *)fromUserName roomID:(NSString *)roomID
Parameters
fromUserId |
来源用户 ID |
---|---|
fromUserName |
来源用户名 |
roomID |
房间 ID |
Declared In
ZegoLiveRoomApi-Player.h
– onVideoSizeChangedTo:ofStream:
视频尺寸变更通知
- (void)onVideoSizeChangedTo:(CGSize)size ofStream:(NSString *)streamID
Parameters
size |
视频大小 |
---|---|
streamID |
发生视频尺寸变更的流 ID |
Discussion
- 注意:
- 调用 startPlayingStream 之后,在 SDK 获取到第一帧数据时,会收到该 API 回调通知;
- 直播过程中,视频宽高发生变化,会收到该 API 回调通知。
- 从调用开始拉流接口到显示第一帧数据的过程中可能存在一个短暂的时间差(具体时长取决于当前的网络状态),推荐在进入直播页面时加载一张预览图以提升用户体验,然后在收到本回调后去掉预览图。
Declared In
ZegoLiveRoomApi-Player.h
– onRemoteCameraStatusUpdate:ofStream:reason:
远端摄像头状态通知
- (void)onRemoteCameraStatusUpdate:(int)status ofStream:(NSString *)streamID reason:(int)reason
Parameters
status |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceStatus 的定义 |
---|---|
streamID |
流的唯一标识 |
reason |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceErrorReason 的定义 |
Discussion
- 注意:
- 仅拉 UDP 流有效;
- 当房间内其他流的摄像头状态发生改变,如其他用户调用了 EnableCamera (true/false) 后,会收到该 API 回调通知。
Declared In
ZegoLiveRoomApi-Player.h
– onRemoteMicStatusUpdate:ofStream:reason:
远端麦克风状态通知
- (void)onRemoteMicStatusUpdate:(int)status ofStream:(NSString *)streamID reason:(int)reason
Parameters
status |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceStatus 的定义 |
---|---|
streamID |
流的唯一标识 |
reason |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceErrorReason 的定义 |
Discussion
- 注意:
- 仅拉 UDP 流有效;
- 当房间内其他流的麦克风状态发生改变,如其他用户调用了 EnableMic (true/false) 后,会收到该 API 回调通知。
Declared In
ZegoLiveRoomApi-Player.h
– onRemoteSpeakerStatusUpdate:ofStream:reason:
远端扬声器状态通知
- (void)onRemoteSpeakerStatusUpdate:(int)status ofStream:(NSString *)streamID reason:(int)reason
Parameters
status |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceStatus 的定义 |
---|---|
streamID |
流的唯一标识 |
reason |
参考 zego-api-defines-oc.h 中 ZegoAPIDeviceErrorReason 的定义 |
Discussion
- 注意:
- 仅拉 UDP 流有效;
- 当 status 为 Device_Closed 时,reason 表示原因,可能的取值有:ZEGOAPI_DEVICE_ERROR_REASON_GENERIC,ZEGOAPI_DEVICE_ERROR_REASON_DISABLED,ZEGOAPI_DEVICE_ERROR_REASON_MUTE,ZEGOAPI_DEVICE_ERROR_REASON_INTERRUPTION
Declared In
ZegoLiveRoomApi-Player.h
– onRecvRemoteAudioFirstFrame:
接收到远端音频的首帧通知
- (void)onRecvRemoteAudioFirstFrame:(NSString *)streamID
Parameters
streamID |
流的唯一标识 |
---|
Discussion
- 注意:
- 当远端音频的首帧到达后,会收到该 API 回调通知。
Declared In
ZegoLiveRoomApi-Player.h
– onRecvRemoteVideoFirstFrame:
接收到远端视频的首帧通知
- (void)onRecvRemoteVideoFirstFrame:(NSString *)streamID
Parameters
streamID |
流的唯一标识 |
---|
Discussion
- 注意:
- 当远端视频频的首帧到达后,会收到该 API 回调通知。
- 从调用开始拉流接口到显示第一帧数据的过程中可能存在一个短暂的时间差(具体时长取决于当前的网络状态),推荐在进入直播页面时加载一张预览图以提升用户体验,然后在收到本回调后去掉预览图。
Declared In
ZegoLiveRoomApi-Player.h
– onRenderRemoteVideoFirstFrame:
远端视频渲染首帧通知
- (void)onRenderRemoteVideoFirstFrame:(NSString *)streamID
Parameters
streamID |
渲染视频的流 ID |
---|
Discussion
- 注意:
- 当开始要渲染远端的视频首帧时,会收到该 API 回调通知。
Declared In
ZegoLiveRoomApi-Player.h
– onPlayQualityUpdate:stream:videoFPS:videoBitrate:
播放流质量更新通知
- (void)onPlayQualityUpdate:(int)quality stream:(NSString *)streamID videoFPS:(double)fps videoBitrate:(double)kbs
Parameters
quality |
0 ~ 3 分别对应优、良、中、差 |
---|---|
streamID |
观看流ID |
fps |
帧率(frame rate) |
kbs |
码率(bit rate) kb/s |
Discussion
- 注意:
- 拉流成功后会多次收到此回调通知;
- 默认回调频率为 3000ms 一次,通过 [ZegoLiveRoomApi (Player) setPlayQualityMonitorCycle] 可自定义回调频率。
Declared In
ZegoLiveRoomApi-Player.h
– onPlayQualityUpate:quality:
播放流质量更新通知
- (void)onPlayQualityUpate:(NSString *)streamID quality:(ZegoApiPlayQuality)quality
Parameters
streamID |
观看流 ID |
---|---|
quality |
ZegoPlayQuality 对象,内部包含了各项质量数据 |
Discussion
- 注意:
- 拉流成功后会多次收到此回调通知;
- 默认回调频率为 3000ms 一次,通过 [ZegoLiveRoomApi (Player) setPlayQualityMonitorCycle] 可自定义回调频率。
Declared In
ZegoLiveRoomApi-Player.h
– onPlayStatsUpdate:
拉的所有rtc和l3流的统计数据更新回调
- (void)onPlayStatsUpdate:(ZegoAPIPlayStats *)stats
Parameters
stats |
ZegoAPIPlayStats 对象,内部包含了各项统计数据 |
---|
Declared In
ZegoLiveRoomApi-Player.h
– onVideoDecoder:error:stream:
视频解码失败回调
- (void)onVideoDecoder:(ZegoVideoCodecAvc)codecID error:(int)errorCode stream:(NSString *)streamID
Parameters
codecID |
编解码器 ID |
---|---|
errorCode |
错误码, 详见 zego-api-defines-oc.h 中 ZegoAPICodecError 的定义 |
streamID |
流 ID |
Declared In
ZegoLiveRoomApi-Player.h
– onPlayerVideoSuperResolutionUpdate:state:errorCode:
- 视频超分状态回调 *
- 当开启或关闭视频超分后,拉流视频渲染时根据实际情况通知开发者是否开启超分。 *
- (void)onPlayerVideoSuperResolutionUpdate:(NSString *)streamID state:(int)state errorCode:(int)errorCode
Parameters
streamID |
超分的流 ID |
---|---|
state |
超分状态, 0 关闭,1 开启 |
errorCode |
错误码 |
Declared In
ZegoLiveRoomApi-Player.h