docker-nginx-rtmp 및 iPhone으로 간편한 멀티 카메라 라이브 스트리밍 전송 환경 구축

소개



오고전 Advent Calendar 2018 22일째의 기사입니다.

시작해? , 오고전의 Vue.js를 사랑하는 kobakazu0429입니다.

「라이브 스트리밍 전송을 한다(일지도 모른다)」라고 하는 것으로, docker를 사용해 간단하게 환경 구축을 해 어떤 것을 시험해 보고 싶습니다.

본래는 Vue.js + Vuex + OpenLayers에서 기사를 쓰려고 생각했지만, 생각보다 쓸 일이 없었기 때문에 변경입니다 ...

거친 아키텍처는 이런 느낌


이번에 사용하는 URL은 다음과 같습니다.


경로
스트림 키
용도


/live
test
배달용

/live
iphone1
iPhone 1 영상 전송용

/live
iphone2
iPhone 2 영상 전송용

/live/iphone1

iPhone 1 영상 수신용

/live/iphone2

iPhone 2 영상 수신용


실행 환경


MacBook Pro (15-inch, 2017)
プロセッサ : 3.1 GHz Intel Core i7
メモリ : 16 GB 2133 MHz LPDDR3
グラフィックス : Radeon Pro 560 4096 MB, Intel HD Graphics 630 1536 MB
$ docker -v
Docker version 18.06.0-ce, build 0ffa825

nginx-rtmp



Docker for Mac의 도입은 날아갑니다.
Mac 이외를 사용하시는 분은 적절히 읽어 주셨으면 합니다.

이번에는 Docker Hub에서 공개된 tiangolo/nginx-rtmp을 사용합니다.
tiangolo 님에게 감사드립니다!

다음의 한 행을 실행하는 것만으로 서버 구축은 종료입니다.
쉽습니다!
$ docker run -d -p 1935:1935 --name nginx-rtmp tiangolo/nginx-rtmp

OBS Studio



다음은 환경에 맞게 OBS Studio

OBS (Open Broadcaster Software) Studio는 다양한 라이브 배포 사이트에서 사용할 수있는 무료 배포 소프트웨어입니다.
또한, 뿐만 아니라 여러 동영상의 합성, 텔롭, 이미지 삽입 등을 실시간으로 전송하면서 전송할 수 있습니다.

게재 설정



설정→배신에서 「배포 종류: 커스텀 스트리밍 서버」를 선택
URL은 rtmp://<IP Address>/live/입니다.
스트림 키는 자유롭게 설정하십시오. 이것은 나중에 배달을 볼 때 사용됩니다.


전송용 카메라 설정



이번에는 iPhone의 영상을 Wi-Fi를 통해 받고 그것을 전달합니다.
미디어 소스를 새로 추가하고 로컬 파일의 선택을 취소합니다.
입력에 방금전 URL과 끝에 이름을 적당히 붙입니다.
이 URL은 나중에 iPhone 측 설정에서 사용하므로 기억하십시오.
입력 형식은 rtmp/mp4입니다.


이 미디어 소스는 사용하려는 iPhone의 수만큼 추가합니다.

Switcher Studio



이번에는 시험이므로 Switcher Studio이라는 앱을 넣습니다.
회원등록, 로그인을 하면Use as Swicther 선택
설정→Outputs→Custom RTMP, 신규 작성을 합니다


STREAM KEY/ID 는 조금 OBS 에서 설정한 대로 해 주세요.

※ 복수 카메라를 사용하는 경우는 Remote Camera Mode를 선택하여 하나의 단말기에 영상을 집약하거나,
각각을 다른 계정으로 하여 OBS측에서 처리할지의 2택이 된다고 생각합니다.
동일한 계정으로 로그인하면 한 계정이 자동으로 로그아웃됩니다.

VLC (재생 플레이어)



이번에는 웹이 아닌 VLC를 사용하여 재생합니다.
RTMP 서버로부터 스트리밍으로 수신할 수 있으면 어느 플레이어라도 상관없습니다.
네트워크에서 OBS 배달 설정에서 설정한 URL 192.168.137.62/live를 사용하여 수신합니다.


이것으로 재생할 수 있으면 성공입니다!

마지막으로



수고하셨습니다!
달리기 기사가되어 버렸습니다만 어땠습니까?

이제 누구나 밖에서 라이브 뉴스 놀이를 할 수 있군요!

그러면 내일의 euglena1215 선배에 의한 「만든 것의 소개」를 기대하자!

P.S. 뭔가 있으면 코멘트 등으로 부탁합니다 🙇‍♂️🙇‍♂️🙇‍♂️

좋은 웹페이지 즐겨찾기