Swifter {Swift Developer}

메뉴

ReplayKit Live만이 유일한 iOS용 생방송이 가능

ReplayKit은 앱의 영상 및 음성을 직접 녹음하여 메일이나 메시지, 스트림을 처리하기 위한 프레임웍이다. iOS10에서는 ReplayKit Live (스트리밍)기능이 추가되었다. 이 기능을 추가하여 지금까지 구현이 어려웠던 iOS에서는 게임 생방송등이 가능하게 되었다. 이에 따라 간단하게 정리해본다.

Replay Kit Live은 역할이 다른 2가지 애플리케이션을 이용하여 생방송을 제공한다.

  1. 게임앱, 게임등의 콘텐츠를 제공하는 앱
  2. 라이브 서비스 앱, 1번의 앱에서 영상 및 음성 데이터를 받아 서버에 업로드하는 앱

이 두가지 앱이 ReplayKit Live에 대응하고 라이브방송을 할 수 있다.

게임 앱 지원

주로 게임앱쪽에서 대응하게 될 항목들이다.

  1. 라이브 서비스 앱 표시하는 계기를 주는 UI추가 및 오류시 핸들링
  2. 앱의 상태가 변경되었을 때 처리 (배경등)
  3. Facetime 카메라 켜고 끌때 처리와 Facetime카메라뷰 포함
  4. 마이크 켜고 끌때 처리

라이브 서비스 앱 지원

App Extension구조를 사용하여 실현한다. iOS10부터 Replay Kit Live를 지원하기 위해 2가지 Extension이 추가되었다. Xcode에서 File – New – Target에서 추가할 수 있다.

  • Broadcast UI Extension : iOS에서 게임 생방송 앱을 선택한 후에 표시되는 ViewController이다. 이 화면에서 라이브 제목입력 기능, 서비스 생방송 소스를 선택 기능, 같은 서비스의 고유기능을 제공할 수 있다.
  • Broadcast Upload Extension : iOS가 게임앱 스트림을 수신하여 실시간 서비스로 연결해주는 역할을 할 수 있는 확장으로 중계하는 프로그램을 핸들러라고 한다. mp4파일을 일정한 간격으로 처리하는 핸들러로 무압축 영상/음성 데이터를 처리하는 핸들러 2가지로 구성되어 있다.

지원중인 앱들

Playground, Tower Dash, Periscope

 

Replay Kit Live는 앱스토어에 공개할 수 있는 유일한 생방송 방법이다.

Facebook Comments

카테고리:   Swift 3.0

댓글

죄송하지만 댓글은 닫혀 있습니다.