在Ubuntu 18.04上搭建RTMP服务器可以通过以下步骤完成:
安装Nginx
sudo apt update
sudo apt install nginx
安装RTMP模块
sudo apt install libnginx-mod-rtmp
配置Nginx
编辑Nginx配置文件
sudo nano /etc/nginx/nginx.conf
在http部分添加RTMP配置
rtmp {
server {
listen 1935; #RTMP默认端口
chunk_size 4096;
application live {
live on;
recordoff;
}
}
}
重新启动Nginx
sudo systemctl restart nginx
使用FFmpeg推流
ffmpeg -re -i D:\Users\test.mkv -vcodec copy -codec copy -f flv -flvflags no_duration_filesize rtmp://192.168.47.128/live/test,默认的推流地址是:rtmp://<your-server-ip>/live/<stream-key>,其中<stream-key>可以自己定义。
有可能会报以下错误:
Failed to update header with correct duration.
Failed to update header with correct filesize.
stackoverflow上面有答案:
![](https://img-blog.csdnimg.cn/img_convert/7d7974f00486e36774e8fff3b011c4b6.png)
![](https://img-blog.csdnimg.cn/img_convert/ac808fc324c5089c6e37d61f94d53e56.png)
使用VLC播放器播放
可以使用VLC等支持RTMP协议的播放器进行播放,默认的播放地址是:rtmp://<your-server-ip>/live/<stream-key>,其中<stream-key>需要和推流时定义的一致。
![](https://img-blog.csdnimg.cn/img_convert/7a8cc660cec44fb8cf1d50978b4f944a.png)
![](https://img-blog.csdnimg.cn/img_convert/45b482ce9d8a014abd3c57083b36bf2f.png)