要想在MacOS搭建rtmp服务,需要安装以下软件:FFmpeg,Nginx,nginx-rtmp-module。因为本人电脑已经安装过FFmpeg,所以这个安装过程省略。
一、手动编译Nginx和nginx-rtmp-module模块
1、下载Nginx模块
curl -O http://nginx.org/download/nginx-1.21.4.tar.gz
tar -zxvf nginx-1.21.4.tar.gz
cd nginx-1.21.4
2、下载nginx-rtmp-module模块并解压
git clone https://github.com/arut/nginx-rtmp-module.git
3、编译安装
进入到Nginx的解压文件夹下,执行如下名字,需要确认解压后的rtmp模块位置。
./configure --add-module=../nginx-rtmp-module
make
sudo make install
二、修改Nginx配置添加rtmp服务
打开 /usr/local/nginx/conf/nginx.conf 添加如下内容。
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
allow play all;
}
}
}
三、启动 Nginx 服务
sudo ./sbin/nginx -c ./conf/nginx.conf
使用命令查看运行情况:
ps -ef |grep nginx
四、通过 ffplay 接收直播流地址
ffplay rtmp://localhost/live/room
五、FFmpeg 推流
ffmpeg -re -i ~/Desktop/001.mkv -c:v copy -c:a aac -ar 44100 -f flv rtmp://localhost/live/room
通过以上步骤,即可查看推流的内容。
注意:
- 默认的FFmpeg 不会带ffplay,需要自行编译安装。
- 需要安装sdl2 库,进入 FFmpeg 目录编译./configure --enable-sdl2