Config

방송은 RemonCast 객체를 통해 이루어집니다. RemonCast 객체에 설정 정보를 지정할 수 있습니다. 설정 정보는 Config 객체로 생성하여, RemoCast 객체 생성 시 인자로 전달합니다. Config 객체를 방송/시청 view가 아닌 곳에서 생성하여 방송/시청 view로 전달할 수 있어 편리합니다.

RemonCast 객체 생성 시 Config를 전달하는 방법 외에도, RemonCast의 connnect() 메소드 호출 시 Config를 인자로 전달하는 방법도 있습니다. 이 방법을 이용하면 RemonCast 객체 생성 시 사용한 Config을 사용하지 않고 connect() 메소드에게 전달된 Config를 사용합니다.

플랫폼 별로 클래스명이 조금 다릅니다. Web, Android용은 Config, iOS용은 RemonConfig 클래스를 참고하십시오.

Basics

가장 기본적으로 화면이 보일 View와 Service Id, Key를 지정하는 것이 필요합니다.

View

영상이 표출될 View를 지정하는 설정으로 뷰가 지정되지 않으면 영상이 보이지 않습니다. (iOS의 경우 View는 RemonConfig 에서 제공하지 않으므로, RemonCall, RemonCast 객체에 직접 지정해야 합니다.)

<video id="remoteVideo" autoplay controls></video>
<video id="localVideo" autoplay controls muted></video>
<script>
  const config = {
    view: {
      remote: '#remoteVideo', local: '#localVideo'
    }
  }
</script>

Service Id, Key

Service Id, Key를 지정 하는 단계로 필수 입니다.

const config = {
  credential: {
    serviceId: 'myServiceId', key: 'myKey'
  }
}

Meta

사용자의 UID, 프로퍼티 등 서비스에 필요한 meta 데이터를 설정 할 수 있습니다. 안드로이드의 경우 HashMap 객체를 전달할 수 있으며, iOS 는 String 데이터만 지원합니다.

N/A

Media

음성과 영상에 대한 보다 다양한 옵션이 제공됩니다.

각 플렛폼별 추가적인 설정은 아래를 참고하세요.

Select Video, Audio

비디오를 키고 끔으로써 영상방송/통화 혹은 음성방송/통화 컨텐츠 서비스를 만들 수 있습니다.

// Audio Only
const config = {
  media: {
    audio: true,
    video: false
  }
}
// Audio, Video
const config = {
  media: {
    audio: true,
    video: true
  }
}

Video Options

widthheight는 상대편에게 보낼 영상의 해상도를 결정하는 것입니다. 최대 640, 480의 해상도로 보낼 것을 설정하였지만 이것이 꼭 지켜지는 것은 아닙니다. WebRTC는 기본적으로 네트워크나 단말의 상태에 따라 해상도와 framerate등을 유연하게 변화시키면서 품질을 유지하고 있기 때문입니다. 해상도가 실제와 차이가 날 수는 있지만 ratio는 최대한 맞추기 위해 노력합니다.

Browser는 H.264와 VP8, VP9등의 영상 코덱을 지원하고 있습니다. RemoteMonster는 H.264를 기본 코덱으로 사용하고 있으며 변경이 필요하다면 이 설정으로 변경할 수 있습니다.

frameRate항목은 1초에 몇번의 프레임으로 인코딩할 지를 결정합니다. 일반적인 영상통화에서는 15정도도 적당합니다.

facingMode는 기기의 앞과 뒤에 카메라가 있을 때 어떤 쪽의 카메라를 사용할 것인지를 결정하는 것입니다. 현재 모바일 버전의 크롬 브라우저에서는 facingMode가 제대로 동작하지 않습니다.

const config = {
  media: {
    video: {
      width: {max: '640', min: '640'},
      height: {max: '480', min: '480'},
      codec: 'H264',                 // 'VP9', 'VP8', 'H264'
      frameRate: {max:15, min:15},
      facingMode: 'user',             // 'user', 'environment'
      maxBandwidth: '3000'
    }
  }
}

Music / Voice Mode

영상, 음성모드일때 음성의 작동방식을 설정 할 수 있습니다. Voice 모드는 노이즈를 억제하고 음성을 명확하게 전달하는데 초점이 맞추어져 있으며 통화에 적합합니다. Music모드는 모든 소리를 왜곡 없이 명확하게 전달하는데 중점이 있습니다. 기본값은 Voice 입니다.

N/A

Debug

SILENT, ERROR, WARN, INFO, DEBUG, VERBOSE를 설정할 수 있으며 뒤로 갈 수록 더 자세한 로그를 확인할 수 있습니다.

const config = {
  dev:{
    logLevel: 'INFO'
  }
}

Last updated