关于在宿主 App 共享屏幕流发布者如何监听流的开始与结束

主播端如何监听屏幕共享流的发布与结束
发布时间: 2022-01-04 18:46

回答:

1、发布者针对屏幕共享发布监听:

__block BOOL hasStart = NO;

RCRTCScreenShareOutputStream *videoOutputStream =
 [[RCRTCEngine sharedInstance] getScreenShareVideoStreamWithGroupId:ScreenShareGroupID];

// 屏幕共享流发送的回调   
videoOutputStream.videoFrameSendCallback = 
^RCRTCVideoFrame * _Nullable(BOOL valid, RCRTCVideoFrame * _Nullable videoFrame) {

        if (valid && !hasStart) {  
        hasStart = !hasStart;          
        //发布屏幕共享流 
        }        
        return videoFrame;    
};

2、发布者针对屏幕共享结束发布监听:

遵守代理 <RCRTCEngineEventDelegate>

[RCRTCEngine sharedInstance].delegate = self;

//发布者关闭屏幕共享
- (void)screenShareExtentionFinished{ 
}