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

转载自http://www.cnblogs.com/jys509/p/5649066.html

简介

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

步骤安装

1、安装Homebrow

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

/usr/bin/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)"

2、安装Nginx服务器

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

brew tap homebrew/nginx

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

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

这个安装,耗时相对来说比较长。通过操作以上步骤nginx和rtmp模块就安装好了,下面开始来配置nginx的rtmp模块。

首先来看看我们的nginx安装在哪里

brew info nginx-full

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

nginx安装所在位置/usr/local/Cellar/nginx-full/1.10.1/bin/nginx

nginx配置文件所在位置/usr/local/etc/nginx/nginx.conf

nginx服务器根目录所在位置/usr/local/var/www

执行命令 ,测试下是否能成功启动nginx服务

nginx

命令行如下图所示

在浏览器地址栏输入:http://localhost:8080(直接点击)

出现Welcome to nginx ,代表nginx安装成功了。

4、配置rtmp

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

或者打开Finder Shift + command + G前往,用记事本工具打开nginx.conf.


说明:

rtmp是协议名称

server 说明内部中是服务器相关配置

listen 监听的端口号, rtmp协议的默认端口号是1935

application 访问的应用路径是 zbcs

live on; 开启实时

record off; 不记录数据

5. 保存文件后,重新加载nginx的配置文件(这一步很重要)

nginx -s reload

6. 安装ffmepg工具

brew install ffmpeg

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

7、通过ffmepg命令进行推流

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可以随便写。

推流界面:

8. 验证视频

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

rtmp://localhost:1935/zbcs/room

双击播放

播放界面

报错处理

1.ffmepg命令推流的时候,提示连接失败。[tcp @ 0x7ff162504b60] Connection to tcp://localhost:1935 failed (Connection refused), trying next address

出现这个错,是因为配置了nginx.conf后,需要重启nginx。输入命令重启后就没有问题了

nginx -s reload

2.安装完nginx后,在浏览器地址栏输入:http://localhost:8080显示打不开网页

解决方式:由于安装后nginx服务器,有时需要等上几分钟才生效。如果还不生效,测试下是否能成功启动nginx服务,命令

nginx

具体请参考“步骤安装”第三点。

以上是把本地的视频文件推流到服务器然后利用VLC进行播放,下面是利用LFLiveKit

进行真机推流:

1.首先先倒入LFLiveKit,可以用pod:pod'LFLiveKit'


获取自己电脑地址:

自己电脑地址

_session= [[LFLiveSessionalloc]initWithAudioConfiguration:[LFLiveAudioConfigurationdefaultConfiguration]videoConfiguration:[LFLiveVideoConfigurationdefaultConfigurationForQuality:LFLiveVideoQuality_Medium2]];

//设置代理

_session.delegate=self;

_session.running=YES;

_session.preView=self.view;

//开启后置摄像头,

self.session.captureDevicePosition=AVCaptureDevicePositionBack;

LFLiveStreamInfo*stream = [LFLiveStreamInfonew];

//如果是跟我blog教程搭建的本地服务器,记得填写你电脑的IP地址

stream.url=@"rtmp://71.0.0.174:1935/rtmplive/room";

[self.sessionstartLive:stream];

打开手机直播后,然后在电脑上打开VLC(同上),就能实现手机推流,在电脑上拉流播放了!!(注:手机需要和电脑连接同一网络!)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容