Linux를 사용하여 나만의 라이브 비디오 스트리밍 서버 만들기


대부분의 라이브 스트리밍 도구 및 사이트는 일반인에게 무료로 제공되지만 온라인에 나타나지 않을 정보를 제공하여 계정을 만들어야하는 경향이 있습니다. 광고 뒤에 일부 콘텐츠를 보유 할 수 있으며 혼란스러워하는 서비스 약관을 통합하여 자신에게 고착되지 않을 수도 있습니다.

실시간 스트리밍을 즐기는 사람들이 있지만 비디오를 대중에게 제공 할 필요는 없습니다. 대신 스트림과 제작 콘텐츠를보다 강력하게 제어하는 ​​것을 선호합니다. Linux와 같은 오픈 소스 소프트웨어가이 장애에 대한 가장 좋은 해답입니다.

미리 생각

개인 스트리밍 서버 설정을 시작하기 전에 몇 가지 질문을해야합니다. 첫째, 어떤 스트림 품질을 원하십니까? 다음으로 시청자 수는 몇 명입니까? 스트리밍 된 모든 컨텐츠를 어디에 저장합니까? 누가 해당 컨텐츠에 액세스 할 수 있습니까?

시스템 요구 사항도 우려 할 수 있습니다. 그러나 이와 관련하여 정확히 무엇이 필요한지에 대한 정해진 규칙이 없으므로 목표에 가장 적합한 것이 무엇인지 직접 확인하고 실험 해보십시오.

어떤 프로토콜을 찾아야합니다. 스트리밍의 오디오 및 비디오 부분을 처리합니다. RTMP (Real-Time Messaging Protocol)는 훌륭한 선택이지만 WebRTC와 같은 상황에서는 상황에 따라 더 나은 서비스를 제공 할 수 있습니다. RTMP는 광범위한 지원을 제공하므로이 도움말에 중점을 둘 것입니다.

또 다른 걱정은 '실시간'스트리밍이 지연 될 수 있습니다. 생방송을한다고해서 모든 것이 완벽하게 정렬되는 것은 아닙니다. 비디오 스트림은 인코딩, 전송, 버퍼링 및 표시되어야하므로 스트림 속성을 약간 조정할 필요가 있습니다.

In_content_1 all : [300x250] / dfp : [640x360 ]->

Linux 서버 설정

우분투 리눅스는 제가 개인적으로 좋아하는 버전이므로 여기서 선택하는 버전이 될 것입니다. GUI 옵션을 선호하는 사람들은 우분투 데스크탑 을 사용할 수 있습니다.

  • 우분투 설치 프로그램을 실행하고 필요에 가장 적합한 설정을 선택하십시오. 서버로 사용되기 때문에 일부 정적 네트워크 설정을 설정하고 싶을 것입니다.
  • 설치 후 시스템이 자동으로 설정되지 않으면 재부팅합니다. Ubuntu 시스템이 부팅되면 사용 가능한 모든 업데이트를 설치하십시오.
  • sudo apt update
    sudo apt upgrade

    Nginx를 사용합니다 이 스트리밍 서버의 웹 서버설치 :

    sudo apt install nginx

    Nginx가 미디어 스트림을 처리 할 수 ​​있도록 RTMP 모듈을 확보하십시오.

    sudo add-apt-repository universe
    sudo apt install libnginx-mod-rtmp

    미디어 스트림을 수락하고 전달할 수 있도록 Nginx의 구성을 조정하십시오.

    sudo nano /etc/nginx/nginx.conf

    구성 파일의 맨 아래에 다음 코드를 추가하십시오.

    rtmp {
            server {
                    listen 1935;
                    chunk_size 4096;

                    application live {
                            live on;
                            record off;
                    }
            }
    }

    나중에 사용할 구성 파일을 저장하십시오. 작동하는 스트리밍 서버를 만들려면

    새로운 구성으로 Nginx를 다시 시작하십시오 :

    sudo systemctl restart nginx

    스트리밍 소프트웨어 설정

    서버가 준비되었으므로 이제 시간입니다. 스트리밍 소프트웨어를 설정합니다. 이 런 쓰루에서 개방형 방송 소프트웨어 (OBS)을 사용하겠습니다.

    • 사이트로 이동하여 Linux 용 빌드를 선택하십시오. 소프트웨어가 시작되면 하드웨어와 가장 일치하는 설정으로 OBS를 구성합니다.
    • 소스바로 아래에있는 +를 클릭하여 스트리밍 소스를 추가합니다.
      • 사케 테스트를 위해 디스플레이 캡처를 누르고 소스 이름을 입력합니다.
      • 확인버튼을 클릭하면 OBS가 바탕 화면을 미러링합니다.
      • 그런 다음 파일탭을 클릭하고 설정을 선택합니다.
      • 스트림 섹션에서 스트림 유형을 맞춤으로 설정…을 선택하고 서버 입력란에 다음 URL을 입력합니다 :

        rtmp://IPaddress/live 

        IPaddress대신 스트리밍 서버의 IP 주소를 입력하십시오.

        이제 고유 한 스트림 키를 생성하여 스트림 키 상자에 입력하십시오. 기억할 수 있도록 작성하고 적어 두십시오. 보안을 강화하려면 인증 사용상자를 선택하고 원하는 자격 증명을 추가하십시오.

        적용확인버튼으로 완료합니다.

        지금 모든 것이 스트리밍을 위해 구성됩니다. 첫 번째 스트림을 시작하려면 지금 스트리밍버튼을 누르세요. 모든 것이 올바르게 완료된 경우 버튼이 스트리밍 중지로 변경됩니다. 스트림의 대역폭 측정 항목이 OBS 창 하단에 나타납니다.

        첫 번째 뷰어가 되십시오

        RTMP를 지원하는 많은 오픈 소스 미디어 플레이어가 있습니다 가장 잘 알려진 것은 VLC 미디어 플레이어 입니다. 이 소프트웨어를 설치하고 시작한 다음 미디어탭을 클릭하고 메뉴에서 네트워크 스트림 열기를 선택하십시오.

        스트림 키가 있으십니까? 스트림 경로를 입력하고 이전에 설정 한 스트림 키를 끝까지 포함시킵니다. 다음과 같이 보일 것입니다 :

        rtmp://IPaddress/live/SecretKey

        재생을 클릭하면 나만의 스트림을 실시간으로 볼 수 있습니다.

        추가 측정

        이제 기본 사항이 달성되었으므로 스트리밍 서버에 대한 액세스를 제한하고 비디오를 녹화 및 저장할 수있는 것은 두 가지 다른 요소입니다.

        기본적으로 누구나 흐름. 이것은 처음에 서버를 작성하려는 목적에 위배 될 수 있습니다. Linux 방화벽, .htaccess 파일 또는 RTMP 모듈의 내장 액세스 제어 를 사용하여 제한된 액세스를 설정하려고합니다. 이 선택은 당신에게 달려 있습니다.

        여기에 제공된 Nginx 구성은 비디오를 스트리밍 할 수만 있지만 저장할 수는 없습니다. 스토리지 옵션을 추가하려면 RTMP 섹션 바로 아래의 Nginx 구성에서 스트림 레코딩 옵션을 설정하고 컨텐츠를 저장하고 저장할 위치를 제공 할 수 있습니다.

        Nginx가 쓸 수 있도록 기존 경로를 설정하십시오. 다음을 입력하십시오 :

        애플리케이션 라이브 {
        라이브 켜짐;
        모두 기록;
        record_path / var / www / html / recordings;
        record_unique on;
        }

        그게 다야 Ubuntu Linux OS를 사용하여 라이브 스트리밍 서버를 설정할 때 필요합니다. 라이브 미디어가 아닌 미디어 스트리밍 서버에 더 관심이 있다면 OBS 대신 플렉스 를 사용하는 것이 좋습니다.

        동영상 실시간 스트리밍 서버 만들기

        관련 게시물:


        31.08.2019