>백엔드 개발 >PHP 튜토리얼 >NGINX는 rtmp 및 hls 라이브 브로드캐스트를 구현하도록 rtmp 서버를 구성합니다.

NGINX는 rtmp 및 hls 라이브 브로드캐스트를 구현하도록 rtmp 서버를 구성합니다.

WBOY
WBOY원래의
2016-08-08 09:29:441984검색

나의 NGINX 사용 소개

먼저 구성:

<code><span>work_processes</span><span>4</span>;
events{
    <span>work_connections</span><span>1024</span>;
}

http{
    <span>include</span> mime.types;
    <span>default_type</span> application/octet-stream;
    <span>sendfile</span><span>on</span>;
    <span>keepalive_timeout</span><span>65</span>;
    server{
        <span>listen</span><span>80</span>;
        <span>server_name</span> localhost;
        <span>location</span> /{
            <span>root</span> html;
            <span>insex</span> index.html index.htm;
            }
        <span>location</span> /hls{
            <span>alias</span> /tmp/app;
            }
        <span>error_page</span><span>500</span><span>502</span><span>503</span><span>504</span> /50x.html;
        <span>location</span> = /50x.html{
            <span>root</span> html;
            }
        }
    }

rtmp{
    server{
        <span>listen</span><span>1935</span>;
        <span>chunk_size</span><span>4000</span>;
        <span>application</span> liaortmp{
            <span>live</span><span>on</span>;
            }
        <span>application</span> hls{
            <span>live</span><span>on</span>;
            <span>hls</span><span>on</span>;
            <span>hls_path</span> /tmp/app;
            <span>hls_frament</span><span>15s</span>;
            }
        }
    }
</code>

구성 해석


  • 작업 프로세스 및 work_connections

work_processes: 프로세스를 시작합니다. 일반적으로 동일한 수의 CPU로 설정됩니다.
work_connections: 단일 백그라운드 작업자 프로세스에 대한 최대 동시 연결 수

  • http 서버 구성

    • sendndfile: nginx가 sendfile 함수를 호출하는지 여부를 지정합니다. (제로 복사 모드)을 사용하여 파일을 출력합니다. 일반 응용 프로그램의 경우 다운로드와 같은 디스크 IO 부하가 큰 응용 프로그램에 사용되는 경우 디스크 및 네트워크 I/O 처리 속도의 균형을 맞추기 위해 끄기로 설정할 수 있습니다.
    • keepalive_timeout: 연결 시간 초과
    • 서버
      • listen:
      • server_name에서 수신할 포트를 구성합니다. xxx, 즉 IP 해당 도메인 이름
      • loaction /: 기본 요청
      • error_page 및 다음 위치: 오류 프롬프트 페이지 정의
      • location /hls: 요청 hls 정의 , 여기에 내 진술은 hls 스트림을 요청하는 경우 재생 주소 뒤에 m3u8을 추가해야 합니다. hls 조각은 /tmp/app에서 가져오고 앱은 이를
  • rtmp 푸시 서버 구성

    • listen: 수신 포트

    • application liaortmp: rtmp 일반 구성 여기에서 푸시 요청

    • application liaohls: 여기에서 rtmp 푸시 요청을 구성하고 hls 모드를 통해 재생하며 슬라이스는 /tmp/
    • 에 배치됩니다. 이는 위의 http 구성에 해당합니다. 앱에서 무엇을 작성해야 할까요? here, in http 여기에 무엇을 써야 하나요? app
        live on: 라이브 방송 모드 전환, 즉 일대다 방송

      • hls on: HLS 전환 애플리케이션

      • hls_path: 슬라이스 저장 주소

      • hls_fragment: 슬라이스 크기, HLS 세그먼트 길이 설정, 기본값은 5초입니다

  • 이제 nginx의 간단한 구성이 완료되었습니다. 위의 구성은 /usr/local/conf/nginx.conf에 저장되어 있습니다.


      예시(
    • 에 대하여) app
      rtmp 스트리밍 및 rtmp 재생

      • 푸시 주소: rtmp://x.x.x.x:1935/liaortmp/liao

      • 플레이 주소: rtmp://x.x.x.x:1935/liaortmp/liao

    • rtmp 푸시 및 hls 라이브 방송

      • 푸시 주소: rtmp://x.x.x.x:1935/liaohls/liao

      • 재생 주소: rtmp://x.x.x.x :80/hls/liao

      는 무엇이든 바꿀 수 있습니다. liao
    참고

    1. Nginx 구성 파일에 대한 자세한 설명
    2. Nginx RTMP 모듈 nginx-rtmp-module 명령 상세 설명

    위 내용은 관련 내용을 포함하여 rtmp 및 hls 라이브 방송을 구현하기 위한 NGINX rtmp 서버 구성을 소개하는 내용으로, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.