一、在MAC上搭建nginx+rtmp服务器
-
- 安装Homebrew
- 先打开终端查看是否已安装
Homebrew
,若安装,则直接输入man brew
,若未安装,则执行
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 若安装后想卸载,则执行
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
-
- 安装nginx
- 先
clone nginx
到本地brew tap homebrew/nginx
- 再执行
brew install nginx-full --with-rtmp-module
- 最后
nginx
,在浏览器中打开http://localhost:9180(因为我的8080端口已被占用),若成功,则会出现
Snip20190115_2.png
-
若提示下图,则表示端口号已被占用
Snip20190115_4.png
- 那么可以执行
vim /usr/local/etc/nginx/nginx.conf
,点击键盘i
,更改红色箭头所指向的地方,改为9180
(可自定义),点击esc按钮
,:wq
保存退出
Snip20190115_6.png
-
执行
sudo nginx -s reload
重启便可 -
- 配置nginx和ramp
- 先查看nginx的安装位置
brew info nginx-full
Snip20190115_8.png
- 再
vim /usr/local/etc/nginx/nginx.conf
,滚动到最后一行,在最后一个}
后添加
# 在http节点后面加上rtmp配置
rtmp {
server {
listen 1935;
application rtmplive {
live on;
record off;
}
}
}
-
保存退出后重启nginx(其中的1.15.8要换成你自己安装的nginx版本号, 查看版本号用
nginx -v
命令即可)
/usr/local/Cellar/nginx-full/1.10.1/bin/nginx -s reload
-
若报错
nginx: [emerg] unknown directive “rtmp” in /usr/local/etc/nginx/nginx.conf:119
,最简单的方式便是先卸载brew uninstall nginx
,再重新安装brew install nginx-full --with-rtmp-module
-
- 安装配置FFmpeg
- 执行
brew install ffmpeg
,安装等待过程有些长,可在等待过程中先安装一个支持rtmp协议的视频播放器VLC
-
使用FFmpeg推流
-
执行
Snip20190115_9.pngffmpeg -re -i /Users/dordly/Desktop/phoneVideo.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room
,成功显示下图
-
将视频推流到服务器后,打开VLC,然后File->open network->输入:
rtmp://localhost:1935/rtmplive/room
,然后点击播放的同时,在终端输入ffmpeg -re -i /Users/dordly/Desktop/phoneVideo.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room
,便可看见视频播放
网友评论