forked from nyanloutre/nixos-config
LoutreOS: déplacement serveur rtmp
This commit is contained in:
parent
866106f86d
commit
20939b47b7
@ -71,7 +71,7 @@ in
|
|||||||
nginx = {
|
nginx = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.nginx.override {
|
package = pkgs.nginx.override {
|
||||||
modules = with pkgs.nginxModules; [ rtmp dav ];
|
modules = with pkgs.nginxModules; [ dav ];
|
||||||
};
|
};
|
||||||
recommendedGzipSettings = true;
|
recommendedGzipSettings = true;
|
||||||
recommendedOptimisation = true;
|
recommendedOptimisation = true;
|
||||||
@ -183,11 +183,7 @@ in
|
|||||||
"maxspiegel.fr" = base { "/" = { root = "/run/python-ci/nyanloutre/site-max"; }; };
|
"maxspiegel.fr" = base { "/" = { root = "/run/python-ci/nyanloutre/site-max"; }; };
|
||||||
"stream.nyanlout.re" = base {
|
"stream.nyanlout.re" = base {
|
||||||
"/" = {
|
"/" = {
|
||||||
root = "/var/www/hls/";
|
proxyPass = "http://10.30.135.71";
|
||||||
extraConfig = ''
|
|
||||||
add_header Cache-Control no-cache;
|
|
||||||
add_header Access-Control-Allow-Origin *;
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"login.nyanlout.re" = simpleReverse config.services.nginx.sso.configuration.listen.port;
|
"login.nyanlout.re" = simpleReverse config.services.nginx.sso.configuration.listen.port;
|
||||||
@ -230,37 +226,6 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
appendConfig = let
|
|
||||||
rootLocation = config.services.nginx.virtualHosts."stream.nyanlout.re".locations."/".root;
|
|
||||||
in ''
|
|
||||||
rtmp {
|
|
||||||
server {
|
|
||||||
listen 1935;
|
|
||||||
|
|
||||||
application live {
|
|
||||||
live on;
|
|
||||||
|
|
||||||
exec_push ${pkgs.ffmpeg}/bin/ffmpeg -i rtmp://localhost/$app/$name -async 1 -vsync -1
|
|
||||||
-c:v libx264 -c:a aac -b:v 768k -b:a 96k -vf "scale=720:trunc(ow/a/2)*2" -tune zerolatency -preset ultrafast -crf 28 -f flv rtmp://localhost/show/$name_mid
|
|
||||||
-c:v libx264 -c:a aac -b:v 1024k -b:a 128k -vf "scale=960:trunc(ow/a/2)*2" -tune zerolatency -preset ultrafast -crf 28 -f flv rtmp://localhost/show/$name_high
|
|
||||||
-c copy -f flv rtmp://localhost/show/$name_src 2>>${rootLocation}/ffmpeg-$name.log;
|
|
||||||
}
|
|
||||||
|
|
||||||
application show {
|
|
||||||
live on;
|
|
||||||
hls on;
|
|
||||||
|
|
||||||
hls_path ${rootLocation};
|
|
||||||
hls_fragment 3s;
|
|
||||||
hls_playlist_length 60s;
|
|
||||||
|
|
||||||
hls_variant _mid BANDWIDTH=448000; # Medium bitrate, SD resolution
|
|
||||||
hls_variant _high BANDWIDTH=1152000; # High bitrate, higher-than-SD resolution
|
|
||||||
hls_variant _src BANDWIDTH=4096000; # Source bitrate, source resolution
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
postgresql = {
|
postgresql = {
|
||||||
|
Loading…
Reference in New Issue
Block a user