Prechádzať zdrojové kódy

增加直播摄像头反转设置

Pq 3 rokov pred
rodič
commit
6f409475d0

+ 15 - 10
teacher/src/main/java/com/cooleshow/teacher/presenter/live/LiveRoomPresenter.java

@@ -240,17 +240,20 @@ public class LiveRoomPresenter extends BasePresenter<LiveRoomContract.LiveRoomVi
      * 切换摄像头
      */
     public void reverseCamera() {
-        RCRTCEngine.getInstance().getDefaultVideoStream().switchCamera(new CameraVideoCapturer.CameraSwitchHandler() {
-            @Override
-            public void onCameraSwitchDone(boolean isFrontCamera) {
-                // 切换成功
-            }
+        if (RCRTCEngine.getInstance().getDefaultVideoStream() != null) {
+            RCRTCEngine.getInstance().getDefaultVideoStream().switchCamera(new CameraVideoCapturer.CameraSwitchHandler() {
+                @Override
+                public void onCameraSwitchDone(boolean isFrontCamera) {
+                    // 切换成功
+                    RCRTCEngine.getInstance().getDefaultVideoStream().setPreviewMirror(isFrontCamera);
+                }
 
-            @Override
-            public void onCameraSwitchError(String errorDescription) {
-                // 切换失败
-            }
-        });
+                @Override
+                public void onCameraSwitchError(String errorDescription) {
+                    // 切换失败
+                }
+            });
+        }
     }
 
     public void prepareJoinRoom(String roomId, boolean isCreate) {
@@ -462,6 +465,8 @@ public class LiveRoomPresenter extends BasePresenter<LiveRoomContract.LiveRoomVi
         if (rcrtcRoom == null) {
             return;
         }
+        boolean frontCamera = RCRTCEngine.getInstance().getDefaultVideoStream().isFrontCamera();
+        RCRTCEngine.getInstance().getDefaultVideoStream().setPreviewMirror(frontCamera);
         RCRTCEngine.getInstance().getDefaultVideoStream().startCamera(null);
         rcrtcRoom.getLocalUser().publishDefaultLiveStreams(new IRCRTCResultDataCallback<RCRTCLiveInfo>() {
             @Override