nginx 推流 ffmpeg

 
        application live {
        live on;
        hls on; #这个参数把直播服务器改造成实时回放服务器。
        wait_key on; #对视频切片进行保护,这样就不会产生马赛克了。
        hls_path /opt/video/hls; #切片视频文件存放位置。
        hls_fragment 10s;     #每个视频切片的时长。
        hls_playlist_length 60s;  #总共可以回看的事件,这里设置的是1分钟。
        hls_continuous on; #连续模式。
        hls_cleanup on;    #对多余的切片进行删除。
        hls_nested on;     #嵌套模式。
        }
 
rtmp://192.168.199.123:1935/hls/zjs
http://192.168.199.123/zjs.m3u8
 
ffmpeg -hwaccel cuvid -c:v h264_cuvid -i <input> -c:v h264_nvenc -b:v 2048k -vf scale_npp=1280:-1 -y <output>
ffmpeg -hwaccel cuvid -hwaccel_device 0 -c:v h264_cuvid -i <input> -c:v h264_nvenc -b:v 2048k -vf scale_npp=1280:-1 -y <output>
 
-hwaccel cuvid:指定使用cuvid硬件加速
-c:v h264_cuvid:使用h264_cuvid进行视频解码
-c:v h264_nvenc:使用h264_nvenc进行视频编码
-vf scale_npp=1280:-1:指定输出视频的宽高,注意,这里和软解码时使用的-vf scale=x:x不一样
 
向不同GPU提交转码任务
ffmpeg -hwaccel cuvid -hwaccel_device 0 -c:v h264_cuvid -i <input> -c:v h264_nvenc -b:v 2048k -vf scale_npp=1280:-1 -y <output>
 

已有 0 条评论

    欢迎您,新朋友,感谢参与互动!