Skip to content

demo_api

Su, Jia edited this page Jan 3, 2018 · 7 revisions

两人连麦

在demo中,我们将魔方连麦SDK和金山推流SDK集成到一起,共同完成推流 + 连麦的功能。

实现思路为:
以金山推流SDK为主体,将连麦功能封装为推流的一个模块KMCAgoraVRTCClient,然后通过KMCAgoraStreamer完成与其他模块的配合。

因此,demo功能包含推流SDK的全部功能 + 连麦功能。
并且,demo内连麦功能和推流功能互不影响, 可独立的控制。

推流

  1. 开始推流
public void startStream()
  1. 停止推流
public void stopStream()

连麦

  1. 开始连麦
public void startRTC(String channel)
  1. 停止连麦
public void stopRTC()

连麦窗口设置

窗口设置方法说明

  1. 小窗口的位置和大小可以通过以下方法设置
   /**
   * the sub screen position
   * must be set before registerRTC
   *
   * @param width  width for frame from this pin to show, should be 0~1, default value 0.35f
   * @param height height for frame from this pin to show, should be 0~1, default value 0.3f
   * @param left   left position for left top of frame from this pin, should be 0~1, default value 0.65f
   * @param top    top position for left top of frame from this pin, should be 0~1, defualt value 0.f
   * @param mode   scaling mode
   */
  public void setRTCSubScreenRect(float left, float top, float width, float height, int mode)
  1. camera窗口的尺寸和位置可以通过以下方法设置
  /**
   * set camera screen rect when rtc connected
   * @param left left position for left top of frame from this pin, should be 0~1, default value 0.f
   * @param top top position for left top of frame from this pin, should be 0~1, default value 0.f
   * @param width width for frame from this pin to show, should be 0~1, default value 1.f
   * @param height height for frame from this pin to show, should be 0~1, default value 1.f
   * @param mode scaling mode
   */
  public void setRTCMainScreenRect(float left, float top, float width, float height, int mode)
  1. 通过以下方法可以设置大窗口显示的图像内容
  //大窗口为camera图像
  public static final int RTC_MAIN_SCREEN_CAMERA = 1;
  //大窗口为连麦图像
  public static final int RTC_MAIN_SCREEN_REMOTE = 2;

    /**
   * set rtc main Screen
   *
   * @param mainScreenType
   */
  public void setRTCMainScreen(int mainScreenType)