
// Mute user with id dennymCloud.muteRemoteAudio("denny", true);// Unmute user with id dennymCloud.muteRemoteAudio("denny", false);
self.trtcCloud = [TRTCCloud sharedInstance];// Mute user with id denny[self.trtcCloud muteRemoteAudio:@"denny" mute:YES];// Unmute user with id denny[self.trtcCloud muteRemoteAudio:@"denny" mute:YES];
// Mute user with id dennytrtc_cloud_->muteRemoteAudio("denny", true);// Unmute user with id dennytrtc_cloud_->muteRemoteAudio("denny", false);
// 播放 denny 的摄像头画面(我们称之为“主路画面”)mCloud.startRemoteView("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG,cameraView);// 播放 denny 的屏幕分享画面(我们称之为“辅路画面”)mCloud.startRemoteView("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_SUB,screenView);// 播放 denny 的低分辨率画面(主路画面和低清画面只能二选一)mCloud.startRemoteView("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_SMALL,cameraView);// 停止播放 denny 的摄像头画面mCloud.stopRemoteView("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG,cameraView);// 停止播放所有视频画面mCloud.stopAllRemoteView();
self.trtcCloud = [TRTCCloud sharedInstance];// 播放 denny 的摄像头画面(我们称之为“主路画面”)[self.trtcCloud startRemoteView:@"denny" streamType:TRTCVideoStreamTypeBig view:cameraView];// 播放 denny 的屏幕分享画面(我们称之为“辅路画面”)[self.trtcCloud startRemoteView:@"denny" streamType:TRTCVideoStreamTypeSub view:screenView];// 播放 denny 的低分辨率画面(主路画面和低清画面只能二选一)[self.trtcCloud startRemoteView:@"denny" streamType:TRTCVideoStreamTypeSmall view:cameraView];// 停止播放 denny 的摄像头画面[self.trtcCloud stopRemoteView:@"denny" streamType:TRTCVideoStreamTypeBig view:cameraView];// 停止播放所有视频画面[self.trtcCloud stopAllRemoteView];
// 播放 denny 的摄像头画面(我们称之为“主路画面”)trtc_cloud_->startRemoteView("denny", liteav::TRTCVideoStreamTypeBig, (liteav::TXView)(hWnd));// 播放 denny 的屏幕分享画面(我们称之为“辅路画面”)trtc_cloud_->startRemoteView("denny", liteav::TRTCVideoStreamTypeSub, (liteav::TXView)(hScreenWnd));// 播放 denny 的低分辨率画面(主路画面和低清画面只能二选一)trtc_cloud_->startRemoteView("denny", liteav::TRTCVideoStreamTypeSmall, (liteav::TXView)(hWnd));// 停止播放 denny 的摄像头画面trtc_cloud_->stopRemoteView("denny", liteav::TRTCVideoStreamTypeBig);// 停止播放所有视频画面trtc_cloud_->stopAllRemoteView();
// 将 denny 的主路画面切换到一个悬浮的小窗口中(假如该迷你小窗口为 miniFloatingView)mCloud.updateRemoteView("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG,miniFloatingView);// 将远端用户 denny 的主路画面设置为填充模式,并开启左右镜像模式TRTCCloudDef.TRTCRenderParams param = new TRTCCloudDef.TRTCRenderParams();param.fillMode = TRTCCloudDef.TRTC_VIDEO_RENDER_MODE_FILL;param.mirrorType = TRTCCloudDef.TRTC_VIDEO_MIRROR_TYPE_DISABLE;mCloud.setRemoteRenderParams("denny", TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG,param);
self.trtcCloud = [TRTCCloud sharedInstance];// 将 denny 的主路画面切换到一个悬浮的小窗口中(假如该迷你小窗口为 miniFloatingView)[self.trtcCloud updateRemoteView:miniFloatingView streamType:TRTCVideoStreamTypeBig forUser:@"denny"];// 将远端用户 denny 的主路画面设置为填充模式,并开启左右镜像模式TRTCRenderParams *param = [[TRTCRenderParams alloc] init];param.fillMode = TRTCVideoFillMode_Fill;param.mirrorType = TRTCVideoMirrorTypeDisable;[self.trtcCloud setRemoteRenderParams:@"denny" streamType:TRTCVideoStreamTypeBig params:param];
// 将 denny 的主路画面切换到另外一个窗口中(假如新窗口句柄为 newView)trtc_cloud_->updateRemoteView("denny", liteav::TRTCVideoStreamTypeBig, (liteav::TXView)(newView));// 将远端用户 denny 的主路画面设置为填充模式,并开启左右镜像模式liteav::TRTCRenderParams param;param.fillMode = TRTCVideoFillMode_Fill;param.mirrorType = TRTCVideoMirrorType_Enable;trtc_cloud_->setRemoteRenderParams("denny", TRTCVideoStreamTypeBig, param);
// 感知远端用户视频状态的变化,并更新开启了摄像头的用户列表(mCameraUserList)@Overridepublic void onUserVideoAvailable(String userId, boolean available) {available?mCameraUserList.add(userId) : mCameraUserList.remove(userId);}// 感知远端用户音频状态的变化,并更新开启了麦克风的用户列表(mMicrophoneUserList)@Overridepublic void onUserAudioAvailable(String userId, boolean available) {available?mMicrophoneUserList.add(userId) : mMicrophoneUserList.remove(userId);}// 感知远端用户进入房间的通知,并更新远端用户列表(mUserList)@Overridepublic void onRemoteUserEnterRoom(String userId) {mUserList.add(userId);}// 感知远端用户离开房间的通知,并更新远端用户列表(mUserList)@Overridepublic void onRemoteUserLeaveRoom(String userId,int reason) {mUserList.remove(userId);}
// 感知远端用户视频状态的变化,并更新开启了摄像头的用户列表(mCameraUserList)- (void)onUserVideoAvailable:(NSString *)userId available:(BOOL)available{if (available) {[mCameraUserList addObject:userId];} else {[mCameraUserList removeObject:userId];}}// 感知远端用户音频状态的变化,并更新开启了麦克风的用户列表(mMicrophoneUserList)- (void)onUserAudioAvailable:(NSString *)userId available:(BOOL)available{if (available) {[mMicrophoneUserList addObject:userId];} else {[mMicrophoneUserList removeObject:userId];}}// 感知远端用户进入房间的通知,并更新远端用户列表(mUserList)- (void)onRemoteUserEnterRoom:(NSString *)userId{[mUserList addObject:userId];}// 感知远端用户离开房间的通知,并更新远端用户列表(mUserList)- (void)onRemoteUserLeaveRoom:(NSString *)userId reason:(NSInteger)reason{[mUserList removeObject:userId];}
// 感知远端用户视频状态的变化,并更新开启了摄像头的用户列表(mCameraUserList)void onUserVideoAvailable(const char* user_id, bool available) {available ? mCameraUserList.push_back(user_id) : mCameraUserList.remove(user_id);}// 感知远端用户音频状态的变化,并更新开启了麦克风的用户列表(mMicrophoneUserList)void onUserAudioAvailable(const char* user_id, bool available) {available ? mMicrophoneUserList.push_back(user_id) : mMicrophoneUserList.remove(user_id);}// 感知远端用户进入房间的通知,并更新远端用户列表(mUserList)void onRemoteUserEnterRoom(const char* user_id) {mUserList.push_back(user_id);}// 感知远端用户离开房间的通知,并更新远端用户列表(mUserList)void onRemoteUserLeaveRoom(const char* user_id, int reason) {mUserList.remove(user_id);}
文档反馈