@protocol VeLivePusherStatisticsObserver <NSObject>
推流器周期性回调。
| 返回 | 名称 |
|---|---|
| void | onStatistics: |
| void | onLogMonitor: |
- (void)onStatistics:(VeLivePusherStatistics *)statistics;
推流周期性统计信息回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| statistics | VeLivePusherStatistics* | 周期性统计信息,默认每 5s 回调一次,详情请参见 VeLivePusherStatistics。 |
- (void)onLogMonitor:(NSDictionary *) logInfo;
周期性日志信息回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| logInfo | NSDictionary* | 周期性日志信息。 |
@protocol VeLiveMediaPlayerFrameListener <NSObject>
播放器音视频帧回调。通过该回调,您可以获取音频和视频帧的数据。
| 返回 | 名称 |
|---|---|
| void | onVideoFrame: |
| void | onAudioFrame: |
- (void)onVideoFrame:(VeLiveVideoFrame *)videoFrame;
播放器视频帧回调。当完成一个新的视频帧的解码后,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| videoFrame | VeLiveVideoFrame* | 视频帧数据,包含了帧的时间戳和格式等信息,详情请参见 VeLiveVideoFrame。 |
- (void)onAudioFrame:(VeLiveAudioFrame *)audioFrame;
播放器音频帧回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| audioFrame | VeLiveAudioFrame* | 音频帧,详情请参见 VeLiveAudioFrame。 |
@protocol VeLiveFileRecordingListener <NSObject>
直播录制回调。
| 返回 | 名称 |
|---|---|
| void | onFileRecordingStarted |
| void | onFileRecordingStopped |
| void | onFileRecordingError:message: |
- (void)onFileRecordingStarted;
直播录制开始回调。
- (void)onFileRecordingStopped;
直播录制停止回调。
- (void)onFileRecordingError:(int)errorCode message:(nullable NSString *)msg;
直播录制错误回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| errorCode | int | 错误码,详情请参见 VeLivePusherCode。 |
| msg | nullable NSString* | 错误信息。 |
@protocol VeLiveScreenCaptureStatusObserver <NSObject>
| 返回 | 名称 |
|---|---|
| void | broadcastStarted |
| void | broadcastPaused |
| void | broadcastResumed |
| void | broadcastFinished |
- (void)broadcastStarted;
录屏推流开始的回调。当 [RPBroadcastSampleHandler startBroadcast] 回调被触发时,会同时触发该回调。
- (void)broadcastPaused;
屏幕推流暂停的回调。当 [RPBroadcastSampleHandler pauseBroadcast] 回调被触发时,会同时触发该回调。
- (void)broadcastResumed;
屏幕推流恢复的回调。当 [RPBroadcastSampleHandler resumeBroadcast] 回调被触发时,会同时触发该回调。
- (void)broadcastFinished;
屏幕推流结束的回调。当 [RPBroadcastSampleHandler finishBroadcast] 回调被触发时,会同时触发该回调。
@protocol VeLiveVideoFrameFilter <NSObject>
自定义的视频处理回调。
| 返回 | 名称 |
|---|---|
| int | onVideoProcess:dstFrame: |
- (int)onVideoProcess:(VeLiveVideoFrame *)srcFrame dstFrame:(VeLiveVideoFrame *)dstFrame;
自定义的视频处理方法。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| srcFrame | VeLiveVideoFrame* | 源视频帧,详情请参见 VeLiveVideoFrame。 |
| dstFrame | VeLiveVideoFrame* | 处理后的视频帧,详情请参见 VeLiveVideoFrame。 |
返回值
=0:处理成功;<0:处理失败,该帧会被 SDK 丢弃;>0:处理失败,该帧会被 SDK 继续传递到编码器。@protocol VeLiveVideoFrameListener <NSObject>
视频帧订阅回调。
| 返回 | 名称 |
|---|---|
| VeLiveVideoFrameSource | getObservedVideoFrameSource |
| void | onCaptureVideoFrame: |
| void | onPreEncodeVideoFrame: |
- (VeLiveVideoFrameSource)getObservedVideoFrameSource;
设置当前 Listener 需要的视频帧来源。
返回值
您所要订阅的视频数据的位置信息,详情请参见 VeLiveVideoFrameSource。
- (void)onCaptureVideoFrame:(VeLiveVideoFrame *)frame;
采集视频帧回调。只有当您通过 getObservedVideoFrameSource 返回 VeLiveVideoFrameSourceCapture 时,才会触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveVideoFrame* | 视频帧数据,详情请参见 VeLiveVideoFrame。 |
- (void)onPreEncodeVideoFrame:(VeLiveVideoFrame *)frame;
编码前视频帧回调。只有当您通过 getObservedVideoFrameSource 返回 VeLiveVideoFrameSourcePreEncode 时,才会触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveVideoFrame* | 视频帧数据,详情请参见 VeLiveVideoFrame。 |
@protocol VeLiveAudioFrameListener <NSObject>
音频帧订阅回调。
| 返回 | 名称 |
|---|---|
| VeLiveAudioFrameSource | getObservedAudioFrameSource |
| void | onCaptureAudioFrame: |
| void | onPreEncodeAudioFrame: |
- (VeLiveAudioFrameSource)getObservedAudioFrameSource;
设置当前 Listener 需要的音频帧来源。
返回值
订阅的音频帧位置信息,详情请参见 VeLiveAudioFrameSource。
- (void)onCaptureAudioFrame:(VeLiveAudioFrame *)frame;
采集音频帧回调。只有当您通过 getObservedAudioFrameSource 返回 VeLiveAudioFrameSourceCapture 时,才会触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveAudioFrame* | 音频帧数据,详情请参见 VeLiveAudioFrame。 |
- (void)onPreEncodeAudioFrame:(VeLiveAudioFrame *)frame;
编码前音频帧回调。只有当您通过 getObservedAudioFrameSource 返回 VeLiveAudioFrameSourcePreEncode 时,才会触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VeLiveAudioFrame* | 音频帧数据,详情请参见 VeLiveAudioFrame。 |
@protocol VeLiveMediaPlayerListener <NSObject>
播放器播放回调。通过该回调,您可以获取与播放相关的事件和通知。
| 返回 | 名称 |
|---|---|
| void | onStart |
| void | onProgress: |
| void | onStop |
| void | onError: |
- (void)onStart;
开始播放的回调。
- (void)onProgress:(long)timeMS;
播放进度的回调,每 100ms 触发一次。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| timeMS | long | 播放进度,单位为 ms。 |
- (void)onStop;
停止播放的回调。
- (void)onError:(NSError *)error;
返错误状态的回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| error | NSError* | 错误消息。 |
@protocol VeLiveAudioFrameFilter <NSObject>
自定义的音频处理回调。
| 返回 | 名称 |
|---|---|
| int | onAudioProcess:dstFrame: |
- (int)onAudioProcess:(VeLiveAudioFrame *)srcFrame dstFrame:(VeLiveAudioFrame *)dstFrame;
自定义的音频处理方法。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| srcFrame | VeLiveAudioFrame* | 源音频帧,详情请参见 VeLiveAudioFrame。 |
| dstFrame | VeLiveAudioFrame* | 处理后的音频帧,详情请参见 VeLiveAudioFrame。 |
返回值
=0:处理成功;≠0:处理失败,该帧会被 SDK 继续传递到编码器。@protocol VeLiveSnapshotListener <NSObject>
直播截图回调。
| 返回 | 名称 |
|---|---|
| void | onSnapshotComplete: |
- (void)onSnapshotComplete:(UIImage *)image;
截图成功回调。调用 snapshot: 截图成功后,会收到这个回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| image | UIImage* | 视频的截图。 |
@protocol VeLivePusherObserver <NSObject>
回调协议,用于监听推流器的推流错误、状态、网络质量、设备、首帧等回调事件等。
- (void)onError:(int)code subcode:(int)subcode message:(nullable NSString *)msg;
推流错误回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| code | int | 错误码,详情请参见 VeLivePusherCode。 |
| subcode | int | 子错误码,详情请参见 VeLivePusherErrorCode。 |
| msg | nullable NSString* | 错误信息。 |
- (void)onStatusChange:(VeLivePushStatus)status;
推流状态变化回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| status | VeLivePushStatus | 变化后的推流状态,详情请参见 VeLivePushStatus。 |
- (void)onFirstVideoFrame:(VeLiveFirstFrameType)type timestampMs:(int64_t)timestampMs;
首帧视频回调,当推流器发送出第一帧视频时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveFirstFrameType | 首帧的类型,详情请参见 VeLiveFirstFrameType。 |
| timestampMs | int64_t | 时间戳,单位为 ms。 |
- (void)onFirstAudioFrame:(VeLiveFirstFrameType)type timestampMs:(int64_t)timestampMs;
首帧音频回调,当推流器发送出第一帧音频时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | VeLiveFirstFrameType | 首帧的类型,详情请参见 VeLiveFirstFrameType。 |
| timestampMs | int64_t | 时间戳,单位为 ms。 |
- (void)onCameraOpened:(BOOL)open;
摄像头开启/关闭回调,当推流器的摄像头开启或关闭时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| open | BOOL | 摄像头的新状态是否为开启。
|
- (void)onMicrophoneOpened:(BOOL)open;
麦克风开启/关闭回调,当推流器的麦克风开启或关闭时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| open | BOOL | 麦克风的新状态是否为开启。
|
- (void)onNetworkQuality:(VeLiveNetworkQuality)quality;
网络质量状态回调,当推流器检测到网络质量发生变化时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| quality | VeLiveNetworkQuality | 变化后的网络质量。详情请参见 VeLiveNetworkQuality。 |
- (void)onAudioPowerQuality:(VeLiveAudioPowerLevel)level value:(float)value;
音量等级回调,当推流器采集的音频音量等级发生变化时,触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| level | VeLiveAudioPowerLevel | 变化后的音量等级。详情请参见 VeLiveAudioPowerLevel。 |
| value | float | 当前音量的分贝值(dB)。
|