转自:http://www.jb51.net/article/93772.htm
前言
相信大家都知道nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,所以小编在网上整理了安装流程,现在分享给大家并且作备忘。有需要的朋友们可以参考学习,下面来一起看看吧。
一、安装Homebrow
已经安装了brow的可以直接跳过这一步。
执行命令
1
|
ruby -e
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
如果已经安装过,而想要卸载:
1
|
ruby -e
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
|
二、安装nginx
先glone nginx项目到本地:
1
|
brew tap homebrew
/nginx
|
执行安装:
1
|
brew
install
nginx-full --with-rtmp-module
|
安装过程比较缓慢,耐心等待
通过操作以上步骤nginx和rtmp模块就安装好了,下面开始来配置nginx的rtmp模块
首先来看看我们的nginx安装在哪里了
1
|
brew info nginx-full
|
执行上面的命令后我们可以看到信息
nginx安装所在位置
1
|
/usr/local/Cellar/nginx-full/1
.10.1
/bin/nginx
|
nginx配置文件所在位置
1
|
/usr/local/etc/nginx/nginx
.conf
|
三、运行nginx
执行命令 ,测试下是否能成功启动nginx服务
1
|
nginx
|
命令行如下图所示
在浏览器地址栏输入:http://localhost:8080 (直接点击)
如果出现
代表nginx安装成功了
如果终端上提示
1
|
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already
in
use)
|
则表示8080
端口被占用了, 查看端口PID
1
|
lsof
-i tcp:8080
|
kill掉占用8080端口的PID
1
|
kill
9603(这里替换成占用8080端口的PID)
|
然后重新执行nginx
nginx常用方法:重新加载配置文件
1
|
nginx -s reload
|
重新加载日志:
1
|
nginx -s reopen
|
// 停止 nginx
1
|
nginx -s stop
|
// 有序退出 nginx
1
|
nginx -s quit
|
四、配置rtmp
现在我们来修改nginx.conf这个配置文件,配置rtmp
复制nginx配置文件所在位置
1
|
/usr/local/etc/nginx/nginx
.conf
|
打开Finder Shift + command + G前往,用记事本工具打开nginx.conf
1
2
3
|
http {
……
}
|
在http节点后面加上rtmp配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
rtmp {
server {
listen 1935;
#直播流配置
application rtmplive {
live on;
#为 rtmp 引擎设置最大连接数。默认为 off
max_connections 1024;
}
application hls{
live on;
hls on;
hls_path
/usr/local/var/www/hls
;
hls_fragment 1s;
}
}
}
|
五、安装ffmepg工具
1
|
brew
install
ffmpeg
|
安装这个需要等一段时间等待吧 然后准备一个视频文件作为来推流,然后我们在安装一个支持rtmp协议的视频播放器,Mac下可以用VLC
VLC.04
显示下图表示ffmpeg安装完毕
六、ffmepg 安装完成后可以开始推流了
1
2
|
ffmpeg -re -i 你的视频文件的绝对路径(如
/Users/lideshan/Downloads/Demo
.mp4) -vcodec copy -f flv rtmp:
//localhost
:1935
/zbcs/room
//
如:ffmpeg -re -i
/Users/jiangys/Documents/Document/demo
.mp4 -vcodec copy -f flv rtmp:
//localhost
:1935
/zbcs/room
|
这里zbcs是上面的配置文件中,配置的应用的路径名称;后面的room可以随便写。
推流界面:
七、验证视频
然后电脑上打开vlc这个播放器软件 点击File---->Open Network
在弹出来的框中选择Network然后输入URL:
1
|
rtmp:
//localhost
:1935
/zbcs/room
|
双击播放
播放界面
报错处理
1.ffmepg命令推流的时候,提示连接失败。 [tcp @ 0x7ff162504b60] Connection to tcp://localhost:1935 failed (Connection refused), trying next address
出现这个错,是因为配置了nginx.conf后,需要重启nginx。输入命令重启后就没有问题了
1
|
nginx -s reload
|
2.安装完nginx后,在浏览器地址栏输入:http://localhost:8080 显示打不开网页
解决方式:由于安装后nginx服务器,有时需要等上几分钟才生效。如果还不生效,测试下是否能成功启动nginx服务,命令
1
|
nginx
|
具体请参考“步骤安装”第三点。
总结
好了,到这就基本安装结束了,大家安装步骤一步步来都可以安装成功的,以上就是这篇文章的全部内容,希望能对大家的学习或者工作带来一定的帮助,如果有疑问大家可以留言交流。