[Red5 Media Server] 3부. 동영상 스트리밍 하기

2017. 4. 25. 14:59 IT 및 개발

안녕하세요.

Red5 미디어 서버를 설치한 이유가 동영상 스트리밍이 기본이라고 생각을 합니다.

그럼 이젠 동영상 스트리밍을 해봐야겠죠??


1부에서 Red5 설치를 완료 했으면 동영상 스트리밍을 하기위한 준비는 완료가 되었다고 보면 됩니다.



1. Red5가 설치된 서버에서 테스트


   - 일단 Red5 설치된 서버에서 브라우저로 웹사이트에 접속합니다.

   - URL : http://localhost:5080/

   - 화면 중간 즘에 [demo]를 클릭합니다.

     

   - OFLA Demo에서 [JWPlayer demo]를 클릭합니다.

     

   - RTMP / RTMPT 프로토콜로 된 데모를 재생시켜봅니다.

   - 정상적으로 재생이 되면 동영상 스트리밍이 정상 동작하고 있는것입니다.



2. 외부에서 접근하기 위한 방화벽 오픈


   - 외부에서 Red5 웹사이트나 RTMP 프로토콜로 접속을 하려면 방화벽에서 포트 오픈을 해야합니다.

   * Red5 기본 포트 안내

     - 웹사이트(HTTP) : 5080

     - RTMP : 1935

   - 제어판 → 관리 도구 → [고급 보안이 포함된 Windows 방화벽]을 실행합니다.

   - 인바운드 규칙으로 이동하여 우측 작업에서 [새 규]을 클릭합니다.

     ㆍ1단계 규칙 종류 : 포트 선택 후 다음

     ㆍ2단계 프로토콜 및 포트 : TCP / 5080, 1935

     ㆍ3단계 작업 : 연결 허용

     ㆍ4단계 프로필 : 3가지 모두 체크

     ㆍ5단계 이름 : Red5 Media Server 입력 후 마침 (이름은 원하는 이름으로 입력)

   * 별도의 방화벽 서버를 사용중이면 해당 방화벽 서버에서 포트 오픈을 해줘야 합니다.



3. 외부에서 스트리밍 서비스 테스트


   - 외부에서 Red5 웹사이트에 접속을 하려면 서버의 IP나 도메인을 설정 후 접속을 하면됩니다.

   - 여기서는 같은 공유기 내부에서 사용 URL : http://192.168.151.122:5080/

   - 위 1번과 같은 화면이 나타납니다.

   - [demo]를 클릭 후 JWPlayer demo 옆에 있는 [Classic demo]를 클릭합니다.

     (JWPlayer demo는 내부 경로가 localhost로 되어 있어서 동영상 재생이 안됩니다.)

   - 서버 경로에 rtmp://서버IP/oflaDemo를 입력하고 connect를 클릭합니다. 

     

   - 연결이 성공하면 위와 같이 library에 동영상 목록이 나옵니다.

   - 동영상 목록에서 재생할 영상을 클릭하면 목록 아래에 동영상이 재생됩니다.

   - 목록 및 동영상이 재생되면 정상적으로 설정이 완료되었으면 스트리밍 할 준비가 되었습니다.



4. 새로운 동영상 추가 및 경로 확인


   - 새로운 동영상을 스트리밍 폴더에 추가를 하도록 하겠습니다.

   - 위치 : C:\red5-server\webapps\oflaDemo\streams

   - 위 폴더에 새로운 영상 poli.mp4를 추가했습니다. (나머지 2개 영상은 Red5에 포함된 샘플 영상입니다.)

     

   - 이번에는 데모페이지가 아닌 외부 동영상 플레이어에서 재생을 해도보록 하겠습니다.

   * RTMP 경로 확인

     - rtmp://192.168.151.122/oflaDemo/poli.mp4

     - rtmp://192.168.151.122/oflaDemo/guardians2.mp4

     - rtmp://192.168.151.122/oflaDemo/BladeRunner2049.flv

   * RTMPT 경로 확인

     - rtmpt://192.168.151.122:5080/oflaDemo/BladeRunner2049.flv

   - 전 팟플레이어를 사용합니다. 실행 후 화면에서 마우스 우 클릭 : 열기 → 주소 열기를 클릭합니다.

   - 위 RTMP 경로 중 새로 추가한 영상의 경로를 복사하여 팟플레이어 주소 열기 입력 창에 복사하고 [확인]을 클릭합니다.

   - 영상이 재생되면 새로운 영상도 정상적으로 스트리밍이 되고 있는것을 확인 할 수 있습니다.



5. 스트리밍 서비스 이름 변경


   - oflaDemo 이름이 맘에 안들어 streaming 이라는 새로운 이름으로 변경을 하겠습니다.

   - C:\red5-server\webapps\oflaDemo\WEB-INF 으로 이동을 합니다.

   - red5-web.xml을 메모장으로 열어 아래와 같이 변경합니다.

webapp.contextPath=/streaming

webapp.virtualHosts=*

   - web.xml을 메모장으로 엽니다.

<display-name>streaming</display-name>

<context-param>

<param-name>webAppRootKey</param-name>

<param-value>/streaming</param-value>

</context-param>


   - 웹앱의 폴더명은 그대로 사용해도 되고, streaming으로 변경해도 됩니다.

     * C:\red5-server\webapps\streaming

   - Red5 서비스 매니저 또는 윈도우 서비스에서 Red5 Media Server를 중지 후 다시 시작합니다.

   - rtmp://192.168.151.122/streaming/poli.mp4 변경된 경로를 확인 후 팟플레이어에서 재생을 해도보록 하겠습니다.

   - 영상이 재생되면 스트리밍 서비스 이름이 정상적으로 변경이 된 것입니다.



6. 외부 폴더를 스트리밍 폴더에 추가하기


   - HDD의 용량 제한이 있기때문에 기본 폴더로만 운영하기에는 부족할 수가 있습니다.

   - 그래서 윈도우의 폴더 심볼 링크를 통해 외부 폴더를 스트리밍 해보도록 하겠습니다.

   - 여기서는 드라이브가 하나이기 때문에 C:\streams 이렇게 폴더를 생성했습니다.

   - 그리고 기본 폴더에 있던 poli.mp4를 복사하여 C:\streams에 복사 후 poli_1.mp4로 변경하겠습니다.

   - 윈도우의 검색에서 cmd를 입력하면 [명령 프롬프트]가 뜹니다. 마우스 우클릭 후 [관리자 권한으로 실행]을 클릭합니다.

   - C:\red5-server\webapps\streaming\streams 폴더로 이동합니다.

   - mklink "vod1" "C:\streams" 명령어로 vod1라는 심볼 링크 폴더를 생성합니다. 원본 경로는 C:\streams입니다.

     

   - dir /al 을 입력하여 생성된 심볼 링크 폴더를 확인할 수 있습니다.

  - 추가된 경로의 영상을 재생해 보도록 하겠습니다.
   - 팟플레이어로 다음 경로를 재생합니다. rtmp://192.168.151.122/streaming/vod1/poli_1.mp4
   - 영상이 재생되면 정상적으로 외부 폴더를 스트리밍 하고 있는것입니다.
   - 이 방법으로 vod1을 D:\로, vod2를 E:\로 심볼 링크를 걸어서 사용을 할 수 있습니다.
   - 단, 원본 폴더의 드라이브명이나 위치는 변경이 되면 안됩니다.


이것으로 3부. 동영상 스트리밍 하기를 마치도록 하겠습니다.

이글을 보신분에게 많은 도움이 되었기를 바라며, 다음 4부에서는 웹캠을 이용한 라이브 스트리밍에 대해서 알아보도록 하겠습니다.

감사합니다.