[Modify]腾讯trtc修改

This commit is contained in:
wushaocheng
2023-09-02 15:39:31 +08:00
parent 24f1437418
commit 1ac47c055d
14 changed files with 49 additions and 27 deletions

View File

@@ -94,6 +94,12 @@ public class AudioEngineManager {
return iAudioEngine.isRemoteMute();
}
public void stopLocalAudio() {
if (this.iAudioEngine != null) {
this.iAudioEngine.stopLocalAudio();
}
}
/**
* 设置角色,上麦,下麦(调用)
*
@@ -154,14 +160,14 @@ public class AudioEngineManager {
return this.iAudioEngine != null && this.iAudioEngine.isEnableLoopBack();
}
public void connectOtherRoom(String roomId,long userUid){
public void connectOtherRoom(String roomId, long userUid) {
if (iAudioEngine != null) {
iAudioEngine.connectOtherRoom(roomId, userUid);
}
}
public void disconnectOtherRoom() {
if (iAudioEngine != null){
if (iAudioEngine != null) {
iAudioEngine.disconnectOtherRoom();
}
}

View File

@@ -10,6 +10,8 @@ public interface IAudioEngine {
void reEnterChannel(long channelId, long uid);
void stopLocalAudio();
/**
* 设置角色,上麦,下麦(调用)
*

View File

@@ -2025,6 +2025,8 @@ public final class IMNetEaseManager {
//開麥
AudioEngineManager.get().setRole(Constants.CLIENT_ROLE_BROADCASTER);
AudioEngineManager.get().setMute(roomQueueInfo.mRoomMicInfo.isMicMute() || AvRoomDataManager.get().mIsNeedOpenMic);
//默認閉麥去掉聲音采集
AudioEngineManager.get().stopLocalAudio();
}
noticeUpMic(Integer.parseInt(key), chatRoomMember.getAccount());
}

View File

@@ -108,6 +108,11 @@ public class RtcEngineManager extends BaseEngine {
setMute(isMute);
}
@Override
public void stopLocalAudio() {
}
@Override
public void leaveChannel() {

View File

@@ -15,7 +15,6 @@ import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TX
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_5;
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_6;
import static com.tencent.liteav.audio.TXAudioEffectManager.TXVoiceReverbType.TXLiveVoiceReverbType_7;
import static com.tencent.rtmp.TXLivePlayer.PLAY_TYPE_LIVE_FLV;
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAnchor;
import static com.tencent.trtc.TRTCCloudDef.TRTCRoleAudience;
import static com.tencent.trtc.TRTCCloudDef.TRTC_APP_SCENE_LIVE;
@@ -104,19 +103,16 @@ import android.os.Bundle;
import android.text.TextUtils;
import android.view.SurfaceView;
import com.tencent.liteav.TXLiteAVCode;
import com.tencent.liteav.audio.TXAudioEffectManager;
import com.tencent.rtmp.TXLiveConstants;
import com.tencent.liteav.device.TXDeviceManager;
import com.tencent.rtmp.TXLivePlayer;
import com.tencent.rtmp.ui.TXCloudVideoView;
import com.tencent.trtc.TRTCCloud;
import com.tencent.trtc.TRTCCloudDef;
import com.tencent.trtc.TRTCCloudListener;
import com.tencent.trtc.TRTCStatistics;
import com.yizhuan.xchat_android_core.R;
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
import com.yizhuan.xchat_android_core.utils.LogUtils;
import com.yizhuan.xchat_android_library.utils.ResUtil;
import org.json.JSONException;
import org.json.JSONObject;
@@ -983,7 +979,8 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
if (role == CLIENT_ROLE_BROADCASTER) {
userRole = TRTCRoleAnchor;
if (!TRtcEngineManager.get().isMute) {
trtcCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_MUSIC);
trtcCloud.getDeviceManager().setSystemVolumeType(TXDeviceManager.TXSystemVolumeType.TXSystemVolumeTypeMedia);
trtcCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_DEFAULT);
}
} else if (role == CLIENT_ROLE_AUDIENCE) {
userRole = TRTCRoleAudience;
@@ -1079,7 +1076,8 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
return -1;
}
if (enabled) {
trtcCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_MUSIC);
trtcCloud.getDeviceManager().setSystemVolumeType(TXDeviceManager.TXSystemVolumeType.TXSystemVolumeTypeMedia);
trtcCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_DEFAULT);
} else {
trtcCloud.stopLocalAudio();
}
@@ -2186,7 +2184,7 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
TRTCCloudListener.TRTCAudioFrameListener listener = new TRTCCloudListener.TRTCAudioFrameListener() {
@Override
public void onCapturedRawAudioFrame(TRTCCloudDef.TRTCAudioFrame trtcAudioFrame) {
public void onCapturedAudioFrame(TRTCCloudDef.TRTCAudioFrame trtcAudioFrame) {
}
@@ -2209,6 +2207,12 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
public void onMixedAllAudioFrame(TRTCCloudDef.TRTCAudioFrame trtcAudioFrame) {
}
@Override
public void onVoiceEarMonitorAudioFrame(TRTCCloudDef.TRTCAudioFrame trtcAudioFrame) {
}
};
trtcCloud.setAudioFrameListener(listener);
return 0;
@@ -2676,12 +2680,12 @@ public class TRTCEngineAdapter extends BaseAdapterImpl {
@Override
public void startCdnPlayerWithUrl(String url, TXCloudVideoView view) {
if (mLivePlayer != null) {
mLivePlayer.setPlayerView(view);
mLivePlayer.setRenderRotation(TXLiveConstants.RENDER_ROTATION_PORTRAIT);
mLivePlayer.setRenderMode(TXLiveConstants.RENDER_MODE_ADJUST_RESOLUTION);
mLivePlayer.startPlay(url, PLAY_TYPE_LIVE_FLV);
}
// if (mLivePlayer != null) {
// mLivePlayer.setPlayerView(view);
// mLivePlayer.setRenderRotation(TXLiveConstants.RENDER_ROTATION_PORTRAIT);
// mLivePlayer.setRenderMode(TXLiveConstants.RENDER_MODE_ADJUST_RESOLUTION);
// mLivePlayer.startPlay(url, PLAY_TYPE_LIVE_FLV);
// }
}
@Override

View File

@@ -77,7 +77,7 @@ public class TRtcEngineHandler extends Handler {
// 如果麦上没有这个人,要把他静音
AudioEngineManager.get().setRemoteMute(uid, true);
}
if (micPosition == Integer.MIN_VALUE) continue;
if (micPosition == Integer.MIN_VALUE || speaker.volume == 0) continue;
rtcEngineManager.speakQueueMembersPosition.add(micPosition);
}
IMNetEaseManager.get().getChatRoomEventObservable().onNext(

View File

@@ -161,6 +161,13 @@ public class TRtcEngineManager extends BaseEngine {
}
}
@Override
public void stopLocalAudio() {
if(mRtcEngine != null) {
mRtcEngine.enableLocalAudio(false);
}
}
@Override
public boolean setRole(int role) {
Logger.t(TAG).d("setRole role=" + role + ",isAudienceRole:" + isAudienceRole);