快速搭建自己的直播服务器,完成属于你直播服务

通过本文您能学到以下内容:

1 、动手搭建直播服务器,完成一次对移动端支持的直播。

2、使用OBS推流。

3、使用html5网页播放m3u8流媒体文件。

一、动手搭建流媒体服务器

这里我们选用开源srs流媒体服务器https://github.com/ossrs/srs,有兴趣的同学也可选用Adobe Media Server 5,原理都是一样的。

安装方法在https://github.com/ossrs/srs有详细的说明,但是考虑到我用的mac电脑,有些细节需要注意,所以下面介绍下安装方法。

第一步:在本地任意目录下分别执行以下命令:

git clone https://github.com/ossrs/srs
vi srs/trunk/conf/srs.conf
修改max_connections    1000;为max_connections     100;
注意:若不修改此值后面编译中会报错
cd srs/trunk
./configure --osx
注意:在mac 系统中./configure 时需要添加  --osx
make

等待安装完毕即可。

第二步:修改配置文件,启动流媒体服务器:

修改配置:

vi srs/trunk/conf/hls.conf
修改hls_path的路径,默认路径为./objs/nginx/html,这里修改为/Users/wangjie/fileUploadDir 。

说明:因为本机没有搭建nginx,apache,所以直接放在的tomcat的虚拟目录下,但建议使用nginx或apache。

hls_path的作用:直播中会将m3u8文件和ts文件输出hls_path,有了m3u8文件就可以在启动端播放了。

m3u8播放地址为:http://192.168.1.115:8088/upload/live/livestream.m3u8,192.168.1.115为本机ip,8088为tomcat服务器端口,upload为tomcat虚拟路径,需要一一替换为自己的web服务器访问路径。

啰嗦一句:对于web服务器而言livestream.m3u8只是一个文件,我们将hls_path设置到web服务器能够访问到即可。
启动srs服务器

./objs/srs -c conf/hls.conf

二、使用OBS串流

1、新建场景,可以创建视频捕获或者窗口捕获,这里使用窗口捕获

WX20180912-163837@2x.png

2、在串流中配置自定义流媒体服务器,url为:rtmp://127.0.0.1:1935/live,流密钥为:livestream

WX20180912-163737@2x.png

3、点击开始串流即可完成串流

image.png

4、这时候就会在上面我们配置的hls_path中生成ts和m3u8文件

WX20180912-164453@2x.png

三、观看直播

1、直播地址分别是:

rtmp url: rtmp://127.0.0.1:1935/live/livestream

m3u8 url: http://127.0.0.1:8088/upload/live/livestream.m3u8

rtmp可用于电脑端播放,m3u8用于移动端播放。

2、电脑端播放方法:使用flash播放或支持rtmp的客户端播放器都可以。

3、移动端播放方法:

新建html5页面,手机端访问此网页即可播放

<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
 </head>
 <body>
 <video src="http://192.168.1.115:8088/upload/live/livestream.m3u8" controls="controls" width="400" height="300"></video>
 </body>
 </html>

结束语:搭建这样一个直播服务器,完成一次直播是很简单的,主要在于配置,理解其中的原理。如有任何问题,欢迎留言,或扫下方公众号二维码关注我,随时交流。

扫码二维码关注我

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏IT技术精选文摘

CDN日志实时分析

CDN(Content Delivery Network),内容分发网络)是互联网网站、应用上极其重要的基础设施,通过CDN,终端用户可直接从边缘节点访问各种图...

60240
来自专栏纯洁的微笑

不懂高性能的负载均衡设计?没关系,架构师带你飞

在软件系统的架构设计中,对集群的负载均衡设计是作为高性能系统优化环节中必不可少的方案。负载均衡本质上是用于将用户流量进行均衡减压的,因此在互联网的大流量项目中,...

10720
来自专栏NetCore

从三个方面提高网站的链接广泛度

从三个方面提高网站的链接广泛度      网站的链接广泛度(Link Popularity)在搜索引擎排名中的作用已得到广泛的认同和重视。实际上,即使...

18950
来自专栏腾讯移动品质中心TMQ的专栏

【穿山甲系列】找出后台偷偷耗电的元凶

如图所示,在浏览器用户反馈中,耗电一直是头部问题之一,用户对于电量是非常敏感的,特别是那种类似“我明明就没用,怎么还在耗电?”的后台耗电问题,更容易引起用户的抱...

29260
来自专栏维C果糖

敲开 GitHub 的大门 · 注册账号

在「初识 GitHub · 简介篇」一文中,我们已经初步了解了 GitHub,里面有众多的业界大神、有丰富的学习资料、有著名的开源项目代码,我们也可以在 Git...

30760
来自专栏腾讯移动品质中心TMQ的专栏

后台性能测试不可不知的二三事

某月黑风高之夜,某打车平台上线了一大波(G+)优惠活动,众人纷纷下单。于是乎,该打车平台使用的智能提示服务扛不住直接趴窝了(如下图)。事后,负责智能提示服务开发...

76970
来自专栏即时通讯技术

腾讯资深架构师干货总结:一文读懂大型分布式系统设计的方方面面

我们常常会听说,某个互联网应用的服务器端系统多么牛逼,比如QQ、微信、淘宝。那么,一个大型互联网应用的服务器端系统,到底牛逼在什么地方?为什么海量的用户访问,会...

32930
来自专栏即时通讯技术

移动端IM中大规模群消息的推送如何保证效率、实时性?

众所周之,群聊是移动端IM的服务端技术难点所在,难在哪?大量的群聊消息,是一条条推给群内成员还是可以使用什么样的优化策略?试想一个2000人大群,一条消息的发出...

15210
来自专栏WeTest质量开放平台团队的专栏

浅谈服务器性能测试的全生命周期——从测试、结果分析到优化策略

服务器性能测试是一项非常重要而且必要的工作,本文是作者Micheal在对服务器进行性能测试的过程中不断摸索出来的一些实用策略,通过定位问题,分析原因以及解决问题...

36140
来自专栏杨建荣的学习笔记

orabbix结合python发送图形报表(一) (r6笔记第33天)

在数据库的运维工作中,如果有一种运筹帷幄的感觉,那么其中一种方式就是看报表,比如喝着咖啡缓缓打开电脑,几十台,上百台的机器的负载明细都在眼底。如果某个地方出现了...

33160

扫码关注云+社区

领取腾讯云代金券