Nginx RTMP用时间戳分段文件名



我有一个用于直播的Nginx RTMP hls服务器,文件名为"streamkey-0.tst,streamkey-1.ts,streamkey-2.ts…">
但我希望这些段不要以零开始的数字开始,而是以当前时间戳开始,如"streamkey-142134122.ts,streamkey 142134126.ts…">
这个问题有解决方案吗?谢谢

您应该在HLS部分中添加hls_fragment_naming timestamp。示例:

rtmp {
server {
listen 1935;

application src {
live on;
exec ffmpeg -i rtmp://localhost/src/$name
-c:a aac -b:a 32k  -c:v libx264 -b:v 128K -f flv rtmp://localhost/hls/$name_low
-c:a aac -b:a 64k  -c:v libx264 -b:v 256k -f flv rtmp://localhost/hls/$name_mid
-c:a aac -b:a 128k -c:v libx264 -b:v 512K -f flv rtmp://localhost/hls/$name_hi;
}
application hls {
live on;
hls on;
hls_path /tmp/hls;
hls_fragment_naming timestamp; # HERE
hls_variant _low BANDWIDTH=160000;
hls_variant _mid BANDWIDTH=320000;
hls_variant _hi  BANDWIDTH=640000;
}
}
}

有关更多信息:https://github.com/arut/nginx-rtmp-module/wiki/Directives#hls_fragment_naming

最新更新