diff --git a/core/src/main/java/com/chwl/core/manager/agora/EngineEventHandler.java b/core/src/main/java/com/chwl/core/manager/agora/EngineEventHandler.java index 843e60af9..174ef2faf 100644 --- a/core/src/main/java/com/chwl/core/manager/agora/EngineEventHandler.java +++ b/core/src/main/java/com/chwl/core/manager/agora/EngineEventHandler.java @@ -139,11 +139,17 @@ public class EngineEventHandler extends IRtcEngineEventHandler { @Override public void onAudioMixingFinished() {//伴奏播放已结束回调 super.onAudioMixingFinished(); - IMNetEaseManager.get().getChatRoomEventObservable().onNext( - new RoomEvent().setEvent(RoomEvent.METHOD_ON_AUDIO_MIXING_FINISHED) - ); } + @Override + public void onAudioMixingStateChanged(int state, int reasonCode) { + super.onAudioMixingStateChanged(state, reasonCode); + if (state == Constants.AUDIO_MIXING_STATE_STOPPED && reasonCode == Constants.AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED) { + IMNetEaseManager.get().getChatRoomEventObservable().onNext( + new RoomEvent().setEvent(RoomEvent.METHOD_ON_AUDIO_MIXING_FINISHED) + ); + } + } @Override public void onRemoteAudioStateChanged(int i, int i1, int i2, int i3) {