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

快速搭建自己的直播服务器,完成属于你的直播服务。通过本文您能学到以下内容:1、动手搭建直播服务器,完成一次对移动端支持的直播。2、使用OBS推流。3、使用html5网页播放m3u8流媒体文件。一、动手搭建流媒体服务器这里我们选用开源srs流媒体服务器[https://github.com/ossrs/srs],有兴趣的同学也可选用[AdobeMediaServer5],原理都是一样的。安装方法在[https://…

大家好,又见面了,我是你们的朋友全栈君。

新增安装详细说明,地址是:https://blog.csdn.net/wjwj1203/article/details/104608243 

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

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、新建场景,可以创建视频捕获或者窗口捕获,这里使用窗口捕获

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

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

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

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

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

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

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

 

三、观看直播

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>

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

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

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131778.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • bigdecimal保留两位小数,不够两位补0_如何保留两位小数

    bigdecimal保留两位小数,不够两位补0_如何保留两位小数BigDecimal保留两位小数核心方法详解:/**BigDecimal.setScale()方法用于格式化小数点setScale(1)表示保留一位小数,默认用四舍五入方式*setScale(1,BigDecimal.ROUND_DOWN)直接删除多余的小数位,如2.35会变成2.3*setScale(1,BigDecimal.ROUND_UP)进位处理,2.35变成2.4*setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35变成2.4*

    2022年9月16日
    3
  • SpringCloud-Alibaba-Sentinel-服务降级-热点限流-服务熔断

    SpringCloud-Alibaba-Sentinel-服务降级-热点限流-服务熔断前言:除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一。一个服务常常会调用别的模块,可能是另外的一个远程服务、数据库,或者第三方API等。例如,支付的时候,可能需要远程调用银联提供的API;查询某个商品的价格,可能需要进行数据库查询。然而,这个被依赖服务的稳定性是不能保证的。如果依赖的服务出现了不稳定的情况,请求的响应时间变长,那么调用服务的方法的响应时间也会变长,线程会产生堆积,最终可能耗尽业务自身的线程池,服务本身也变得不可用熔断策略Sentinel提供

    2022年6月12日
    26
  • 字符串长度函数strlen()。。字符串函数头文件string.h「建议收藏」

    百度知道看到的string.h头文件里常用的函数有:strlen求字符串长度。strcmp比较2个字符串是否一样。strcat字符串连接操作。strcpy字符串拷贝操作。strncat字符串连接操作(前n个字符)。strncpy字符串拷贝操作(前n个字符)。strchr查询字串。strstr查询子串。string.h是C语言里面关于字符数组的函数定义的头文件,更详细的可以到i…

    2022年4月8日
    49
  • python矩阵转置_对python矩阵转置transpose的实例讲解「建议收藏」

    python矩阵转置_对python矩阵转置transpose的实例讲解「建议收藏」对python矩阵转置transpose的实例讲解在读图片时,会用到这么的一段代码:image_vector_len=np.prod(image_size)#总元素大小,3*55*47img=Image.open(path)arr_img=np.asarray(img,dtype=’float64′)arr_img=arr_img.transpose(2,0,1).reshape…

    2022年6月2日
    33
  • 软件包管理(三)–编译安装

    软件包管理(三)–编译安装

    2021年6月10日
    112
  • <!DOCTYPE html PUBLIC……>的组成解释「建议收藏」

    <!DOCTYPE html PUBLIC……>的组成解释「建议收藏」DOCTYPE是documenttype(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本。要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。DOCTYPE声明开始制作符合标准的站点,第一件事情就是声明符合自己需要的DOCTYPE。查看很多使用XHTML

    2022年7月12日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号