ARTC SDK提供了自動推拉流功能,該功能預設開啟。通過自動推拉流功能,客戶的App只需要調用入會、離會、角色切換介面即可實現推拉音視頻的功能。本文介紹自動推拉流功能的實現原理和範例程式碼。
實現原理
說明
純音頻情境下,僅支援推拉音頻流。
音視頻情境下,推拉設定的所有音視頻流。

範例程式碼
關閉自動推拉流API
ARTC SDK提供關閉自動推拉流功能,客戶App可以根據業務需求分別控制關閉自動推音視頻流、關閉自動拉音視頻流的功能。
關閉自動音視頻推流功能
Android範例程式碼:
/* 參數為false是關閉,入會後不會推視頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為true,入會後會立刻推視頻流;預設值就是true */ mAliRtcEngine.publishLocalVideoStream(false); /* 參數為false是關閉,入會後不會推音頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為true,入會後會立刻推視頻流;預設值就是true */ mAliRtcEngine.publishLocalAudioStream(false);iOS範例程式碼:
/* 參數為NO是關閉,入會後不會推視頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為YES,入會後會立刻推視頻流;預設值就是YES */ [self.engine publishLocalVideoStream:NO]; /* 參數為NO是關閉,入會後不會推音頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為YES,入會後會立刻推視頻流;預設值就是YES */ [self.engine publishLocalAudioStream:NO];Windows範例程式碼
/* 參數為false是關閉,入會後不會推視頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為true,入會後會立刻推視頻流;預設值就是true */ mAliRtcEngine->PublishLocalVideoStream(false); /* 參數為false是關閉,入會後不會推音頻流,需要app主動調用此介面來實現推視頻流 */ /* 參數為true,入會後會立刻推視頻流;預設值就是true */ mAliRtcEngine->PublishLocalAudioStream(false);
關閉自動音視頻拉流功能
Android範例程式碼:
/* 參數為false是關閉,入會後不會訂閱視頻流,需要app主動調用subscribeRemoteMediaStream或subscribeRemoteVideoStream訂閱視頻流 */ /* 參數為true,入會後會立刻訂閱視頻流;預設值就是true */ mAliRtcEngine.setDefaultSubscribeAllRemoteVideoStreams(false); /* 參數為false是關閉,入會後不會訂閱音頻流,需要app主動調用subscribeRemoteMediaStream或subscribeRemoteAudioStream訂閱音頻流 */ /* 參數為true,入會後會立刻訂閱視頻流;預設值就是true */ mAliRtcEngine.setDefaultSubscribeAllRemoteAudioStreams(false);iOS範例程式碼:
/* 參數為NO是關閉,入會後不會推視頻流,需要app主動調用subscribeRemoteMediaStream或subscribeRemoteVideoStream訂閱視頻流 */ /* 參數為YES,入會後會立刻推視頻流;預設值就是YES */ [self.engine setDefaultSubscribeAllRemoteVideoStreams:NO]; /* 參數為NO是關閉,入會後不會推音頻流,需要app主動調用subscribeRemoteMediaStream或subscribeRemoteAudioStream訂閱音頻流 */ /* 參數為YES,入會後會立刻推視頻流;預設值就是YES */ [self.engine setDefaultSubscribeAllRemoteAudioStreams:NO];Windows範例程式碼
/* 參數為false是關閉,入會後不會訂閱視頻流,需要app主動調用SubscribeRemoteMediaStream或SubscribeRemoteVideoStream訂閱視頻流 */ /* 參數為true,入會後會立刻訂閱視頻流;預設值就是true */ mAliRtcEngine.SetDefaultSubscribeAllRemoteVideoStreams(false); /* 參數為false是關閉,入會後不會訂閱音頻流,需要app主動調用SubscribeRemoteMediaStream或SubscribeRemoteAudioStream訂閱音頻流 */ /* 參數為true,入會後會立刻訂閱視頻流;預設值就是true */ mAliRtcEngine.SetDefaultSubscribeAllRemoteAudioStreams(false);