|
@@ -42,6 +42,7 @@ object AgoraManager {
|
|
|
|
|
|
override fun onError(err: Int) {
|
|
override fun onError(err: Int) {
|
|
super.onError(err)
|
|
super.onError(err)
|
|
|
|
+ iSwagoIRtcEngineEventHandler?.onError(err)
|
|
LogUtil.d("声网错误码-$err")
|
|
LogUtil.d("声网错误码-$err")
|
|
}
|
|
}
|
|
|
|
|
|
@@ -107,10 +108,44 @@ object AgoraManager {
|
|
|
|
|
|
private fun setChannelProfile() {
|
|
private fun setChannelProfile() {
|
|
mRtcEngine?.setChannelProfile(CHANNEL_PROFILE_LIVE_BROADCASTING)
|
|
mRtcEngine?.setChannelProfile(CHANNEL_PROFILE_LIVE_BROADCASTING)
|
|
|
|
+ mRtcEngine?.enableAudio()
|
|
|
|
+ mRtcEngine?.enableVideo()
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- fun setClientRole(userType: Int,isNeedVideo:Boolean,isNeedVoice:Boolean) {
|
|
|
|
|
|
+ fun setVideoAudio(pullVideo:Boolean,pullAudio:Boolean,pushVideo:Boolean,pushAudio:Boolean){
|
|
|
|
+ if (pullVideo){
|
|
|
|
+ mRtcEngine?.muteAllRemoteVideoStreams(false)
|
|
|
|
+ }else{
|
|
|
|
+ mRtcEngine?.muteAllRemoteVideoStreams(true)
|
|
|
|
+ }
|
|
|
|
+ if (pullAudio){
|
|
|
|
+ mRtcEngine?.muteAllRemoteAudioStreams(false)
|
|
|
|
+ }else{
|
|
|
|
+ mRtcEngine?.muteAllRemoteAudioStreams(true)
|
|
|
|
+ }
|
|
|
|
+ if (pushAudio){
|
|
|
|
+ mRtcEngine?.enableLocalAudio(true)
|
|
|
|
+ mRtcEngine?.muteLocalAudioStream(false)
|
|
|
|
+ }else{
|
|
|
|
+ mRtcEngine?.enableLocalAudio(false)
|
|
|
|
+ mRtcEngine?.muteLocalAudioStream(true)
|
|
|
|
+ }
|
|
|
|
+ if (pushVideo){
|
|
|
|
+ mRtcEngine?.enableLocalVideo(true)
|
|
|
|
+ mRtcEngine?.muteLocalVideoStream(false)
|
|
|
|
+ }else{
|
|
|
|
+ mRtcEngine?.enableLocalVideo(false)
|
|
|
|
+ mRtcEngine?.muteLocalVideoStream(true)
|
|
|
|
+ }
|
|
|
|
+ if (pushVideo || pushAudio){
|
|
|
|
+ setClientRole(RoleType.anchor)
|
|
|
|
+ }else{
|
|
|
|
+ setClientRole(RoleType.user)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private fun setClientRole(userType: Int) {
|
|
this.userType = userType
|
|
this.userType = userType
|
|
if (userType == RoleType.anchor) {
|
|
if (userType == RoleType.anchor) {
|
|
mRtcEngine?.setClientRole(CLIENT_ROLE_BROADCASTER)
|
|
mRtcEngine?.setClientRole(CLIENT_ROLE_BROADCASTER)
|
|
@@ -119,16 +154,6 @@ object AgoraManager {
|
|
clientRoleOptions.audienceLatencyLevel = AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
|
|
clientRoleOptions.audienceLatencyLevel = AUDIENCE_LATENCY_LEVEL_LOW_LATENCY
|
|
mRtcEngine?.setClientRole(CLIENT_ROLE_AUDIENCE, clientRoleOptions)
|
|
mRtcEngine?.setClientRole(CLIENT_ROLE_AUDIENCE, clientRoleOptions)
|
|
}
|
|
}
|
|
- if(isNeedVideo){
|
|
|
|
- mRtcEngine?.enableVideo()
|
|
|
|
- }else{
|
|
|
|
- mRtcEngine?.disableVideo()
|
|
|
|
- }
|
|
|
|
- if(isNeedVoice){
|
|
|
|
- mRtcEngine?.enableAudio()
|
|
|
|
- }else{
|
|
|
|
- mRtcEngine?.disableAudio()
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|