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. [Eclipse插件] Eclipse中如何安装和使用GrepCode插件

    Java是开源的世界,如何快速的搜索到你需要的Java源码呢?2009年7月17日,GrepCode团队发布了一个有趣的 Java源码搜索引擎-GrepCode .与现有的各种搜索引擎相比,Java源 ...

  2. [Java基础] Java对象内存结构

    转载地址:http://www.importnew.com/1305.html 原文于2008年11月13日 发表, 2008年12月18日更新:这里还有一篇关于Java的Sizeof运算符的实用库的 ...

  3. 每天5分钟玩转Docker

    总结的这个八爪鱼图,不懂的时候随时翻翻书.....

  4. 央行mlf,SLF,PSL,MLF,SLO

    央行mlf是什么意思 中国人民银行 中国人民银行(The People's Bank Of China,英文简称PBOC),简称央行,是中华人民共和国的中央银行,中华人民共和国国务院组成部门.在国务院 ...

  5. enter 键登录的实现

    js 代码 document.onkeypress = function() { var iKeyCode = -1; if (arguments[0]) { iKeyCode = arguments ...

  6. Servlet拦截静态图片的解决方案

    一.现象 建立一个使用Freemarker的Web Project程序. Product.ftl中的代码为: <!DOCTYPE html PUBLIC "-//W3C//DTDHTM ...

  7. 【读书笔记】iOS-GCD-block-后台执行

    当一个app按home键退出的时候.仅仅有最多5秒的时间做一些保存或清理资源的工作. 可是调用beginBackgroundTaskWithExpirationHandler方法,能够最多有10分时间 ...

  8. python 使用 BeautifulSoup 解析html

    下载地址:http://www.crummy.com/software/BeautifulSoup/bs4/download/4.3/beautifulsoup4-4.3.2.tar.gz 说明:这个 ...

  9. 【转】Struts2 和 Spring MVC对比

    1. 实现机制 struts2框架是类级别的拦截,每次来了请求就创建一个controller中对应的Action,然后调用setter getter方法把request中的数据注入 .struts2实 ...

  10. 算法笔记_092:蓝桥杯练习 c++_ch04_02_修正版(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 [题目描述] 实现一个时间类Time.将小时,分钟和秒存储为int型成员变量.要求该类中包含一个构造函数,访问用的函数,一个推进当前时间的函数adv ...