Mac上搭建直播服务器Nginx

1.安装Homebrew,执行命令

Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件,可以说Homebrew就是mac下的apt-get、yum神器

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2. 安装Nginx服务器

增加对 nginx 的扩展;也就是从github上下载,home-brew对ngixnx的扩展

brew tap homebrew/nginx

3. 安装Nginx服务器和rtmp模块

brew install nginx-full --with-rtmp-module

4. 配置nginx的ramp模块

查看nginx-full信息

brew info nginx-full

执行上面的命令后我们可以看到如下信息

Docroot is: /usr/local/var/www

The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo. nginx will load all files in /usr/local/etc/nginx/servers/. - Tips -
Run port 80:
$ sudo chown root:wheel /usr/local/Cellar/nginx-full/1.10.0/bin/nginx
$ sudo chmod u+s /usr/local/Cellar/nginx-full/1.10.0/bin/nginx
Reload config:
$ nginx -s reload #重新加载配置文件
Reopen Logfile:
$ nginx -s reopen #再次打开日志文件
Stop process:
$ nginx -s stop #停止服务器
Waiting on exit process
$ nginx -s quit #退出服务器

从上面可以看出

  1. nginx安装所在位置

    /usr/local/Cellar/nginx-full/
  2. nginx配置文件所在位置
    /usr/local/etc/nginx/nginx.conf
  3. nginx服务器根目录所在位置
    /usr/local/var/www
  4. 执行命令 ,测试下是否能成功启动nginx服务
    /usr/local/Cellar/nginx-full/1.10.0/bin/nginx

    在浏览器地址栏输入:http://localhost:8080 如果出现

    Welcome to nginx!

    代表nginx安装成功了

5. 修改nginx.conf这个配置文件,配置rtmp

用Xcode打开nginx.conf, 找到/usr/local/etc/nginx/nginx.conf 文件,拖入到Dock中的Xcode,就可以打开.

http {
……
}
#在http节点下面(也就是文件的尾部)加上rtmp配置:
rtmp {
server {
listen 1935;
application gzhm {
live on;
record off;
}
}
}
  • 说明:
    1. rtmp是协议名称
    2. server 说明内部中是服务器相关配置
    3. listen 监听的端口号, rtmp协议的默认端口号是1935
    4. application 访问的应用路径是 gzhm
    5. live on; 开启实时
    6. record off; 不记录数据

6. 保存文件后,重新加载nginx的配置文件

nginx -s reload

7. 安装ffmepg工具

brew install ffmpeg

安装这个需要等一段时间, 这时你可以准备一个视频文件作为来推流,然后安装一个支持rtmp协议的视频播放器.Mac下可以用VLC

8. 通过ffmepg命令进行推流

ffmpeg -re -i 你的视频文件的绝对路径(如/Users/lideshan/Downloads/广州iOS黑马程序员.mp4)  -vcodec copy -f flv rtmp://localhost:1935/gzhm/room

这里gzhm是上面的配置文件中,配置的应用的路径名称;后面的room可以随便写.

9. 验证视频

然后电脑上打开vlc这个播放器软件 点击File---->Open Network 在弹出来的框中选择Network然后输入URL:

rtmp://localhost:1935/gzhm/room

如图:

VLC设置URL.png

播放界面:

VLC播放.png

9. 可能会遇到的问题

  1. 找不到C语言的编译器clang
    <font>错误信息:

    checking for OS
    + Darwin 15.3.0 x86_64
    checking for C compiler ... not found
    ./configure: error: C compiler clang is not found

    解决方案:
    需要去apple官网下载命令行工具,安装即可. 注意命令行工具的版本需要和你的Xcode对应.

参考文章:
OSX安装nginx和rtmp模块(rtmp直播服务器搭建
Homebrew官网
Homebrew 隐藏命令

Mac上搭建直播服务器Nginx的更多相关文章

  1. Mac上搭建直播服务器Nginx+rtmp

    简介 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 步骤安装 1.安装Homebrow Homebrew简 ...

  2. Mac上搭建直播服务器Nginx+rtmp,实现手机推流、拉流

    转载自http://www.cnblogs.com/jys509/p/5649066.html 简介 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网 ...

  3. ios即时通讯客户端开发之-mac上搭建openfire服务器

    一.下载并安装openfire 1.到http://www.igniterealtime.org/downloads/index.jsp下载最新openfire for mac版 比如:Openfir ...

  4. XMPP之ios即时通讯客户端开发-mac上搭建openfire服务器(二)

    come from:http://www.cnblogs.com/xiaodao/archive/2013/04/05/3000554.html 一.下载并安装openfire 1.到http://w ...

  5. Mac上搭建Web服务器--Apache

    局域网搭建 Web 服务器测试环境,因为Mac OS X 自带了 Apache 和 PHP 环境,我们只需要简单的启动它就行了. 1.命令:sudo apachectl start Apache服务器 ...

  6. mac上搭建svn服务器

    1.terminal 执行svnadmin create 库地址/库名,生成的即为svn库根地址. 2.修改对应目录下conf/svnserve.conf文件: anon-access = read ...

  7. Mac直播服务器Nginx配置对HLS的支持

    在上一篇中Mac上搭建直播服务器Nginx+rtmp,我们已经搭建了nginx+rtmp直播服务器.下面需要对Nginx服务器增加对HLS的支持.在Nginx增加对HLS种支持比较简单,只是简单的修改 ...

  8. 直播服务器Nginx

    Mac直播服务器Nginx配置对HLS的支持 在上一篇中Mac上搭建直播服务器Nginx+rtmp,我们已经搭建了nginx+rtmp直播服务器.下面需要对Nginx服务器增加对HLS的支持.在Ngi ...

  9. mac 教你如何在Mac上搭建自己的服务器——Nginx

    WHAT 本篇主要是基于Nginx在Mac上搭建自己的服务器. 我相信很多朋友肯定是第一次听到Nginx,关于它具有怎样的传奇,这儿肯定说不完也说不透. 有兴趣的朋友可以自行google或者baidu ...

随机推荐

  1. C/C++控制台输出时设置字体及背景颜色

    1.改变整个控制台的颜色用 system("color 0A"); 其中color后面的0是背景色代号,A是前景色代号.各颜色代码如下: 0=黑色 1=蓝色 2=绿色 3=湖蓝色  ...

  2. Context Menus

    转载:http://open.chrome.360.cn/extension_dev/contextMenus.html 内容 清单 范例 API 参考: Chrome.contextMenus 方法 ...

  3. 微软对外披露两个0day漏洞详情

    微软近日对外披露了两个0day漏洞详情,其中一个漏洞存在Adobe阅读器中,可被利用导致任意代码执行:另一个漏洞则允许任意代码在Windows kernel内存中提权执行. 微软称由于该漏洞利用目前还 ...

  4. jquery点击li标签之后在该li标签上添加一个class,点击下一个li时删除上一个li的class

    思路:点击当前li元素后是用removeClass()删除所有兄弟元素(使用siblings()获取)的class样式,然后使用addClass()为当前li添加class 具体演示如下: 1.HTM ...

  5. DevExpress 中 用 LookUpEdit 控件 代替 ComboBoxEdit 控件来绑定 DataTable

    绑定数据及定义列信息 LookUpEdit lue = lookUpEdit1; DataTable dt = new DataTable(); dt.Columns.Add(new DataColu ...

  6. ES集群Master节点配置问题

    ES集群的主节点发现机制采用单播形式,主要配置有三行,如下: discovery.zen.minimum_master_nodes: discovery.zen.ping.multicast.enab ...

  7. 电子商务ICP经营许可证申请条件

    电子商务ICP经营许可证申请条件:注册资金100万的纯内资公司:服务器在本地:域名备案以公司名义备案:申请条件:1.公司营业执照副本复印件需清晰有效,并已完成该年度年检事宜,特别注意营业执照的有效期要 ...

  8. animateBackground-plugin

    (function ($) { if (!document.defaultView || !document.defaultView.getComputedStyle) { var oldCurCSS ...

  9. 有趣的Java之调皮的浮点数

    **当你在写一个电商网站的时候,你可能会给你的商品标价1.99,10.9这样的价格来吸引顾客.我应该用浮点数float/double来储存它们,当我的顾客购买商品的时候,从他们的账户里扣费,使用整型是 ...

  10. UML for mac

    今年苹果公司推出的iPhone4和iPad继续大获成功,国内想在苹果的平台下开发软件赚钱的开发人员越来越多.那么,在苹果的平台下开发软件有哪些UML建模工具可用呢?虽然不如Windows平台下那么多的 ...