Skip to content
Snippets Groups Projects
Select Git revision
  • 4276db8bc3e2a6c7a10e6ebfe7c9ce8165948744
  • master default protected
  • set-sast-config-1
  • v2.2.3
  • v2.2.2
  • v1.4.0
  • v1.3.0
  • v1.2.1
  • v1.2.0
  • v1.1.2
  • v1.1.1
11 results

nginx.conf

Blame
  • nginx.conf 2.99 KiB
    daemon off;
    
    error_log /dev/stdout info;
    
    events {
        worker_connections 1024;
    }
    
    rtmp {
        server {
            listen ${RTMP_PORT};
            chunk_size 4000;
    
            application stream {
                live on;
    
                on_publish http://pitube:3000/callback;
                on_publish_done http://pitube:3000/callback;
                on_update http://pitube:3000/callback;
                notify_update_timeout 15s;
    
    #              -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
    
                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 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 /tmp/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 {
        access_log /dev/stdout combined;
    
        ssl_ciphers         HIGH:!aNULL:!MD5;
        ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
        ssl_session_cache   shared:SSL:10m;
        ssl_session_timeout 10m;
    
        server {
            listen ${HTTP_PORT};
    
            location / {
                proxy_pass http://pitube:3000/;
                add_header Access-Control-Allow-Origin *;
            }
    
            location /hls {
              alias /tmp/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 static/stat.xsl;
            }
    
            location /static {
                alias /www/static;
            }
    
            location = /crossdomain.xml {
                root /www/static;
                default_type text/xml;
                expires 24h;
            }
        }
    }