mirror of
https://github.com/SrIzan10/hctv.git
synced 2026-06-06 00:56:56 +00:00
* feat: initial and probably final rtmp server backend * feat: video player and next-ws * chore: cleanup livekit api routes * feat: chat * feat: move to nginx flv * feat: no viewer streaminfo implementation
74 lines
1.2 KiB
Nginx Configuration File
74 lines
1.2 KiB
Nginx Configuration File
events {
|
|
worker_connections 1024;
|
|
}
|
|
|
|
rtmp {
|
|
server {
|
|
listen 1935;
|
|
|
|
application live {
|
|
live on;
|
|
record off;
|
|
|
|
on_publish http://localhost:3000/api/rtmp/publish;
|
|
}
|
|
|
|
application channel-live {
|
|
live on;
|
|
record off;
|
|
|
|
allow publish 127.0.0.1;
|
|
deny publish all;
|
|
|
|
hls on;
|
|
hls_type live;
|
|
hls_path /dev/shm/hls;
|
|
hls_fragment 2s;
|
|
hls_playlist_length 10s;
|
|
hls_cleanup on;
|
|
|
|
hls_variant _low BANDWIDTH=500000;
|
|
hls_variant _mid BANDWIDTH=1000000;
|
|
hls_variant _hi BANDWIDTH=1500000;
|
|
}
|
|
}
|
|
}
|
|
|
|
http {
|
|
include mime.types;
|
|
default_type application/octet-stream;
|
|
|
|
# performance optimizations
|
|
sendfile on;
|
|
tcp_nopush on;
|
|
tcp_nodelay on;
|
|
keepalive_timeout 65;
|
|
|
|
map $http_authorization $is_authorized {
|
|
default 0;
|
|
$API_AUTH 1;
|
|
}
|
|
|
|
server {
|
|
listen 8888;
|
|
|
|
location /stat {
|
|
if ($is_authorized = 0) {
|
|
return 401 "Unauthorized";
|
|
}
|
|
rtmp_stat all;
|
|
rtmp_stat_format json;
|
|
}
|
|
|
|
location /hls {
|
|
alias /dev/shm/hls;
|
|
add_header Cache-Control no-cache;
|
|
add_header Access-Control-Allow-Origin *;
|
|
|
|
types {
|
|
application/vnd.apple.mpegurl m3u8;
|
|
video/mp2t ts;
|
|
}
|
|
}
|
|
}
|
|
} |