[置顶] 直播技术总结(一)流媒体服务器搭建,进行推流
2017-01-16 10:29
399 查看
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/54425531
前言:直播技术,近年来,相当火,先且不说Codec部分,那它到底复杂么? 服务端推流,客户端进行拉流,两者结合,变成直播,应该说如何优化直播的实时性中的问题,才是复杂部分,如网络原因,如视频卡顿等。今天介绍直播技术总结中流媒体服务器搭建,进行推流,用Mac搭建nginx+rtmp服务器。
步骤安装
前言:直播技术,近年来,相当火,先且不说Codec部分,那它到底复杂么? 服务端推流,客户端进行拉流,两者结合,变成直播,应该说如何优化直播的实时性中的问题,才是复杂部分,如网络原因,如视频卡顿等。今天介绍直播技术总结中流媒体服务器搭建,进行推流,用Mac搭建nginx+rtmp服务器。
简介
nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择。步骤安装
1、安装Homebrow
Homebrew简称brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件,可以说Homebrew就是mac下的apt-get、yum神器 ,因为Mac 本身也是基于unix内核的。/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"[/code]
安装Homebrow中
安装Homebrow好了,如下:2、安装Nginx服务器
增加对 nginx 的扩展;也就是从github上下载,home-brew对ngixnx的扩展,对应命令如下:brew tap homebrew/nginx3、安装Nginx服务器和rtmp模块
brew install nginx-full --with-rtmp-module
这个安装过程,耗时相对来说比较长。通过操作以上步骤nginx和rtmp模块就安装好了,下面开始来配置nginx的rtmp模块。
安装过程,各种等
终于安装好了
接下来可以看看nginx安装在哪里brew info nginx-full
执行上面的命令后我们可以看到信息
一些ngnix命令:
ngnix -s reload:表示重新加载配置文件
ngnix -s reopen: 再次打开日志文件
ngnix -s stop : 停止服务器
ngnix -s quit : 退出服务器
nginx文件目录:
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 ,就可以看到如下界面:4、配置rtmp
我们先进入nginx目录下,用ls,看下其文件,并用 cat 读取下nginx.conf文件:
用notepad++打开nginx.conf, 找到/usr/local/etc/nginx/nginx.conf 文件,就可以打开.
或者打开Finder, 执行快捷键: Shift + command + G前往,用记事本工具打开nginx.conf.http { …… } 在http节点下面(也就是文件的尾部)加上rtmp配置: rtmp { server { listen 1935; application test { live on; record off; } } }
参数说明下:
rtmp是协议名称
server 说明内部中是服务器相关配置
listen 监听的端口号, rtmp协议的默认端口号是1935
application 访问的应用路径是 zbcs
live on; 开启实时
record off; 不记录数据
本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/544255315、保存文件后,重新加载nginx的配置文件(这一步很重要)
nginx -s reload6、安装ffmepg工具
brew install ffmpeg
安装ffmepg中,可以看到各种慢,引起的中断,因为被墙的原因:
安装这个需要等一段时间, 这时你可以准备一个视频文件作为来推流,然后安装一个支持rtmp协议的视频播放器.Mac下可以用 VLC(点击下载)7、通过ffmepg命令开始进行推流
ffmpeg -re -i /Users/mac/Downloads/田埂上的梦.mp4 -vcodec copy -f flv rtmp://localhost:1935/test/live
这里test是上面的配置文件中,配置的application名称;后面的live,根据自己需要去写
最后我们用VLC工具来,看下效果,本来想写一个Android mediaplayer来播放这个,就变成了在手机上看直播了,觉得都一样,就用VLC来演示了:
第一时间获得博客更新提醒,以及更多android干货,源码分析,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码,即可关注。
如果你觉得好,随手点赞,也是对笔者的肯定,也可以分享此公众号给你更多的人,原创不易
相关文章推荐
- 直播技术总结(一)流媒体服务器搭建,进行推流
- 从一个直播APP开发的流媒体系统的技术架构及应用进行总结
- nginx搭建rtmp协议流媒体服务器总结 遇到的问题
- 关于搭建基本的流媒体服务器技术的研究
- [置顶] 直播技术总结(三)ijkplayer的一些问题优化记录
- nginx搭建rtmp协议流媒体服务器总结
- nginx搭建rtmp协议流媒体服务器总结
- nginx搭建rtmp协议流媒体服务器总结
- EasyDSS RTMP流媒体服务器搭建直播集群
- 使用IIS Live Smooth Streaming技术搭建流媒体直播系统
- [置顶] 直播技术总结(二)ijkplayer的编译到Android平台并测试解码库
- Red5流服务器搭建(实现在线直播,流媒体视频播放和在线视频会议)
- nginx搭建rtmp协议流媒体服务器总结
- [置顶] 直播技术总结(四)音视频数据压缩及编解码基础
- Red5流服务器搭建(实现在线直播,流媒体视频播放和在线视频会议)
- 流媒体技术学习笔记之(十四)FFmpeg进行笔记本摄像头+麦克风实现流媒体直播服务
- nginx搭建rtmp协议流媒体服务器总结
- nginx搭建rtmp协议流媒体服务器总结
- 流媒体服务器搭建总结
- nginx搭建rtmp协议流媒体服务器总结