NGINX和FFMPEG生成动态自适应流
在此配置文件中 对于每个接收到的流,对该单个流进行自适应流的转码 ffmpeg命令接受输入并将源转换为4 具有不同比特率和质量的不同流这些 设置与纵横比有关NGINX和FFMPEG生成动态自适应流,nginx,ffmpeg,Nginx,Ffmpeg,在此配置文件中 对于每个接收到的流,对该单个流进行自适应流的转码 ffmpeg命令接受输入并将源转换为4 具有不同比特率和质量的不同流这些 设置与纵横比有关 我们如何动态生成变体?i、 e对于1080p输入,生成所有变量,但是对于240p输入,不生成任何变量 您需要配置日志并查看它给出的错误。 但另一个解决方案是手动检查 您可能正在使用未安装的编解码器 我会检查你的坦克,也许我可以贡献 application live { live on; # Allows live
我们如何动态生成变体?i、 e对于1080p输入,生成所有变量,但是对于240p输入,不生成任何变量 您需要配置日志并查看它给出的错误。 但另一个解决方案是手动检查 您可能正在使用未安装的编解码器 我会检查你的坦克,也许我可以贡献
application live {
live on; # Allows live input
exec ffmpeg -i rtmp://localhost/live/$name -threads 8
-c:v libx264 -profile:v baseline -b:v 768K -s 640x360 -vf "drawtext= fontcolor=red: fontsize=20: fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: text='360': x=10: y=10:" -f flv -c:a aac -ac 1 -strict -2 -b:a 96k rtmp://localhost/show/$name_360
-c:v libx264 -profile:v baseline -b:v 1024K -s 960x540 -vf "drawtext= fontcolor=red: fontsize=20: fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: text='480': x=10: y=10:" -f flv -c:a aac -ac 1 -strict -2 -b:a 128k rtmp://localhost/show/$name_480
-c:v libx264 -profile:v baseline -b:v 1920K -s 1280x720 -vf "drawtext= fontcolor=red: fontsize=20: fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: text='720': x=10: y=10:" -f flv -c:a aac -ac 1 -strict -2 -b:a 128k rtmp://localhost/show/$name_720
-c:v libx264 -profile:v baseline -b:v 4000K -s 1920x1080 -vf "drawtext= fontcolor=red: fontsize=20: fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: text='720': x=10: y=10:" -f flv -c:a aac -ac 1 -strict -2 -b:a 128k rtmp://localhost/show/$name_1080;
}
application show {
live on; # Allows live input from above
hls on; # Enable HTTP Live Streaming
# hls_fragment 5s;
# Pointing this to an SSD is better as this involves lots of IO
hls_path /dest;
#hls_variant _240 BANDWIDTH=288000;
hls_variant _360 BANDWIDTH=448000;
hls_variant _480 BANDWIDTH=1152000;
hls_variant _720 BANDWIDTH=2048000;
hls_variant _1080 BANDWIDTH=4096000;
}