zoukankan      html  css  js  c++  java
  • Mac上搭建直播服务器Nginx

    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 隐藏命令

  • 相关阅读:
    关于react-native遇到Can't find variable: TouchableHighlight
    安卓---app自动更新
    安卓---android:versionCode和android:versionName 用途
    安卓---读取照片---拍照
    运营商如何识别电信诈骗用户
    再要你命3K的任务总结
    连接kettle(6.1)与vm上的apache hadoop(2.6.1)
    如何从数据上知道某个用户即将去香港
    什么是撼动社会的产品?
    与Y哥的谈话。
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/6704644.html
Copyright © 2011-2022 走看看