iOS视频直播之 如何在Mac上搭建RTMP服务器(Nginx+

2017-08-07  本文已影响0人  九爪章鱼

Nginx是什么

Nginx——Ngine X,是一款自由的、开源的、高性能HTTP服务器和反向代理服务器;也是一个IMAP、POP3、SMTP代理服务器;也就是说Nginx本身就可以托管网站(类似于Tomcat一样),进行Http服务处理,也可以作为反向代理服务器使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新浪、网易、腾讯等,详细功能特点就不介绍了。

RTMP是什么?

RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。

安装Homebrew

Homebrew是一个包管理器,用于在Mac上安装一些OS X没有的UNIX工具,能在Mac中方便的安装软件或者卸载软件。Homebrew的安装很简单,打开终端,copy以下命令进去,回车搞定。系统会自动下载安装。

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

为了一次安装成功,最好是将原来的卸载再安装,卸载方法跟安装类似,输入以下命令

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

安装Nginx

终端输入命令

brew tap homebrew/nginx

安装完以后,可以在终端输出的信息里看到一些配置路径:

/usr/local/etc/nginx/nginx.conf (配置文件路径)

/usr/local/var/www (服务器默认路径)

/usr/local/Cellar/nginx/1.12.1  (貌似是安装路径)

安装Nginx服务器和rtmp模块

终端输入以下命令

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

这个安装过程时间有点漫长,请耐心等待。

安装完毕Nginx和rtmp安装完毕后,输入以下命令来查看Nginx的全部信息,并附带了一些Nginx操作命令

brew info nginx-full

OK,没问题后,我们启动Nginx试试,输入命令

nginx

打开浏览器,输入:http://localhost:8080,如果出现

说明Nginx启动成功

配置RTMP模块

终端输入 

/usr/local/etc/nginx/nginx.conf

打开配置文件,在文件内容的最后添加以下内容:

rtmp {

     server {

           listen 1935;

           application rtmpTest {

           live on;

           record off;

          }

    }

}

添加完毕后保存退出,并重新加载nginx的配置文件

nginx -s reload

执行该命令可能会遇到很多奇葩问题,例如

是因为

注释掉就可以了。还有一些问题是因为在句末少了  ;   的,注意一下就可以了

安装ffmepg工具

执行以下命令:brew install ffmpeg,又是一个漫长的等待。。。。在这个等待的间隙,我们下载一个支持RTMP协议的视频播放器VLC

使用ffmepg进行推流

使用命令:

ffmpeg -re -i /Users/xxxx/Desktop/demo.mp4  -vcodec copy -f flv rtmp://localhost:1935/rtmpTest/room

出现红色框框部分,说明服务器已经开始推流,赶紧打开VLC视频播放器,按照以下步骤打开视频

至此,Mac上的RTMP服务器已经搭建完成。

上一篇下一篇

猜你喜欢

热点阅读