비디오 룸
비디오 룸
은 사람들의 실시간 의사 소통및 상호작용을 비디오라는 매체를 사용할 수 있도록 해줍니다. 앞으로 다양한 방식이 추가될 예정이지만 현재는 다음 두가지 유형을 지원하고 있습니다.
BROADCAST_RTMP
- 라이브 스트림을 RTMP 프로토콜로 송출하여 RTMP/HTTP-FLV/HLS/MPEG-DASH로 시청할 수 있도록 하는 유형VIDEO_CONFERENCE
- WebRTC를 사용해서 화상회의를 진행할 수 있는 유형
각 유형에 대한 자세한 설명은 다음과 같습니다.
BROADCAST_RTMP 비디오 룸
이 유형의 비디오 룸
은 방송을 하고자 하는 사람이 RTMP 프로토콜을 사용하여 비디오 스트림을 송출하여 다른 사람들이 RTMP, HTTP-FLV(FLV over HTTP), CMAF(HLS와 MPEG-DASH) 방식으로 비디오 스트림을 실시간으로 시청할 수 있게 해줍니다. BROADCAST_RTMP
유형의 비디오 룸
에서 라이브 방송을 하기 위해서는 다음과 같은 과정을 거쳐 방송을 하게 됩니다
- 등록한 멤버를 생성자로 지정하여
비디오 룸
을BROADCAST_RTMP
유형으로 생성- 현재 라이브 방송은 RTMP 스트림 송출을 통한 방법만 제공되며, 송출된 스트림을 다수가 시청하기 적합한 형태로 변환되어 출력되어 시청이 가능하도록 하고 있습니다. 출력은 CMAF(HLS와 MPEG-DASH)와 RTMP 형식을 지원하고 있습니다.
- 비디오룸 생성자 멤버의 스트림키를 사용해서 RTMP 스트림을 플립플랍 클라우드로 송출
- 각 멤버는 고유한 문자열인 스트림키를 가지고 있으며, 멤버가 방송을 하고자 하는 영상을 스트림으로 송출할 때 사용되는 URL에 명시하게 됩니다. 또 송출된 RTMP 스트림을 어떻게 변환하여 출력할지에 대한 설정도 스트림키를 통해서 하게 됩니다.
- 비디오룸에서 방송 시작하여 실제 방송 시작
- 송출된 RTMP 스트림이 시청이 가능한 형태로 변환이 되면 비디오룸을 통해 그 스트림이 방송 되도록 방송을 시작할 수 있습니다. 비디오룸에서 방송을 시작하면 송출되고 있는 RTMP 스트림이 시청 가능한 형태로 변환된 영상의 URL 정보가 갱신되어 그 정보를 통해 다른 멤버(또는 사람)들이 방송을 시청할 수 있게 됩니다.
- 비디오룸의 URL을 시청 자들에게 전달하여 시청할 수 있도록 하기
- 비디오룸에서 방송 종료하기
위의 각 과정에서의 세부 사항과 자세한 설명은 다음과 같습니다.
1. 비디오룸 생성
비디오 생성시 다음 속성을 지정해서 생성할 수 있습니다.
- 필수
- type:
BROADCAST_RTMP
- appUserId:
비디오룸
의 생성자이자 소유자. 서버 API를 사용하여 생성할 경우 꼭 명시해야 하며 클라이언트 API를 사용하여 생성할 경우에는 클라이언트 API를 요청하는 멤버가 생성자가 되어 명시할 필요가 없습니다. - scheduledAt: ISO 8601 형식의 문자열로 된 방송을 시작할 일시. 표시용으로 이 값이 특별한 기능에 사용되지는 않습니다.
- type:
- 선택
- title:
비디오 룸
에서 진행할 라이브 방송의 제목 - description:
비디오 룸
에서 진행할 방송에 대한 설명 - access Level:
비디오 룸
에 대한 다른 멤버 또는 사람들의 접근 범위에 대한 값으로 현재는PUBLIC
만 지원되어 방송은 방송 시청 URL만 있으면 누구나 시청 가능하게 됩니다.
- title: