| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- daemon off;
- error_log /dev/stdout info;
- events {
- worker_connections 1024;
- }
- rtmp {
- server {
- listen ${RTMP_PORT};
- chunk_size 4000;
- application stream {
- live on;
- exec ffmpeg -i rtmp://localhost:1935/stream/$name
- -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 2500k -f flv -g 30 -r 30 -s 1280x720 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_720p2628kbs
- -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 1000k -f flv -g 30 -r 30 -s 854x480 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_480p1128kbs
- -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 750k -f flv -g 30 -r 30 -s 640x360 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_360p878kbs
- -c:a libfdk_aac -b:a 128k -c:v libx264 -b:v 400k -f flv -g 30 -r 30 -s 426x240 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_240p528kbs
- -c:a libfdk_aac -b:a 64k -c:v libx264 -b:v 200k -f flv -g 15 -r 15 -s 426x240 -preset superfast -profile:v baseline rtmp://localhost:1935/hls/$name_240p264kbs;
- }
- application hls {
- live on;
- hls on;
- hls_fragment_naming system;
- hls_fragment 5;
- hls_playlist_length 10;
- hls_path /opt/data/hls;
- hls_nested on;
- hls_variant _720p2628kbs BANDWIDTH=2628000,RESOLUTION=1280x720;
- hls_variant _480p1128kbs BANDWIDTH=1128000,RESOLUTION=854x480;
- hls_variant _360p878kbs BANDWIDTH=878000,RESOLUTION=640x360;
- hls_variant _240p528kbs BANDWIDTH=528000,RESOLUTION=426x240;
- hls_variant _240p264kbs BANDWIDTH=264000,RESOLUTION=426x240;
- }
- }
- }
- http {
- root /www/static;
- sendfile off;
- tcp_nopush on;
- server_tokens off;
- access_log /dev/stdout combined;
- # Uncomment these lines to enable SSL.
- # ssl_protocols TLSv1.2 TLSv1.3;
- # ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
- # ssl_prefer_server_ciphers off;
- # ssl_session_cache shared:SSL:10m;
- # ssl_session_timeout 1d;
- server {
- listen ${HTTP_PORT};
- # Uncomment these lines to enable SSL.
- # Update the ssl paths with your own certificate and private key.
-
- # listen ${HTTPS_PORT} ssl;
- # ssl_certificate /opt/certs/example.com.crt;
- # ssl_certificate_key /opt/certs/example.com.key;
- location /hls {
- types {
- application/vnd.apple.mpegurl m3u8;
- video/mp2t ts;
- }
- root /opt/data;
- add_header Cache-Control no-cache;
- add_header Access-Control-Allow-Origin *;
- }
- location /live {
- alias /opt/data/hls;
- types {
- application/vnd.apple.mpegurl m3u8;
- video/mp2t ts;
- }
- add_header Cache-Control no-cache;
- add_header Access-Control-Allow-Origin *;
- }
- location /stat {
- rtmp_stat all;
- rtmp_stat_stylesheet stat.xsl;
- }
- location /stat.xsl {
- root /www/static;
- }
- location /crossdomain.xml {
- default_type text/xml;
- expires 24h;
- }
- }
- }
|