diff --git a/openvidu-android/app/src/main/java/com/example/openviduandroid/activities/SessionActivity.java b/openvidu-android/app/src/main/java/com/example/openviduandroid/activities/SessionActivity.java index 864ef071..04b8df3d 100644 --- a/openvidu-android/app/src/main/java/com/example/openviduandroid/activities/SessionActivity.java +++ b/openvidu-android/app/src/main/java/com/example/openviduandroid/activities/SessionActivity.java @@ -282,15 +282,9 @@ public class SessionActivity extends AppCompatActivity { public void setRemoteMediaStream(MediaStream stream, final RemoteParticipant remoteParticipant) { final VideoTrack videoTrack = stream.videoTracks.get(0); + videoTrack.addSink(remoteParticipant.getVideoView()); runOnUiThread(() -> { remoteParticipant.getVideoView().setVisibility(View.VISIBLE); - videoTrack.addSink(remoteParticipant.getVideoView()); - MediaStream mediaStream = session.getPeerConnectionFactory().createLocalMediaStream("105"); - remoteParticipant.setMediaStream(mediaStream); - mediaStream.addTrack(session.getLocalParticipant().getAudioTrack()); - mediaStream.addTrack(session.getLocalParticipant().getVideoTrack()); - remoteParticipant.getPeerConnection().removeStream(mediaStream); - remoteParticipant.getPeerConnection().addStream(mediaStream); }); } diff --git a/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/LocalParticipant.java b/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/LocalParticipant.java index 06504dc6..e6262e16 100644 --- a/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/LocalParticipant.java +++ b/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/LocalParticipant.java @@ -1,9 +1,12 @@ package com.example.openviduandroid.openvidu; import android.content.Context; +import android.os.Build; import org.webrtc.AudioSource; import org.webrtc.Camera1Enumerator; +import org.webrtc.Camera2Enumerator; +import org.webrtc.CameraEnumerator; import org.webrtc.EglBase; import org.webrtc.IceCandidate; import org.webrtc.MediaConstraints; @@ -60,7 +63,12 @@ public class LocalParticipant extends Participant { } private VideoCapturer createCameraCapturer() { - Camera1Enumerator enumerator = new Camera1Enumerator(false); + CameraEnumerator enumerator; + if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { + enumerator = new Camera2Enumerator(this.context); + } else { + enumerator = new Camera1Enumerator(false); + } final String[] deviceNames = enumerator.getDeviceNames(); // Try to find front facing camera diff --git a/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/Participant.java b/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/Participant.java index d21760dd..c11e6677 100644 --- a/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/Participant.java +++ b/openvidu-android/app/src/main/java/com/example/openviduandroid/openvidu/Participant.java @@ -84,7 +84,7 @@ public abstract class Participant { public void dispose() { if (this.peerConnection != null) { try { - this.peerConnection.dispose(); + this.peerConnection.close(); } catch (IllegalStateException e) { Log.e("Dispose PeerConnection", e.getMessage()); }