• 0
  • 0
分享

一、自己电脑下载OBS免费直播工具用来推流,配置如下:

1、添加来源:点击 + ,选择 “显示器采集”

1.jpg

2、点击设置,设置推流地址和串流密钥,例如:rtmp://192.168.10.129/live,密钥:/home

2.jpg

那么我们后面完成所有工作后对应的播放地址如下:

链接类型链接
rtmprtmp://192.168.10.129:1935/live/home
http/m3u8http://192.168.10.129:8083/live/home.m3u8

二、搭建SRS服务

1、下载SRS到服务器并解压;

2、进入thunk目录

cd srs/trunk

3、编译SRS,会自动安装依赖

./configure && make

4、关联配置文件

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

5、修改配置文件

vi conf/srs.conf
http_server {
    enabled         on;
    listen          8083;  # 端口修改为 8083
    dir             ./objs/nginx/html;
}
vhost __defaultVhost__ {
# 主要修改hls配置
    hls {
        enabled         on;
        hls_path      ./objs/nginx/html;
        hls_fragment  10;
        hls_window    60;
        hls_m3u8_file   [app]/[stream].m3u8;
        hls_ts_file     [app]/[stream]-[seq].ts;
    }
    http_remux {
        enabled     on;
        mount       [vhost]/[app]/[stream].flv;
    }
}

6、启动SRS服务

# 启动
./etc/init.d/srs start
# 重启
./etc/init.d/srs reload
# 停止
./etc/init.d/srs stop

7、防火墙开启 8083 和 1935 端口,不然播放地址访问不到

CentOS 7.x
firewall-cmd --zone=public --add-port=8083/tcp --permanent
firewall-cmd --zone=public --add-port=1935/tcp --permanent
firewall-cmd --reload   # 配置立即生效

至此,SRS服务配置完毕,接下来使用OBS推流:

1、点击 “开始推流” ,如果右下角状态为绿色则表示推流成功,如果提示服务器连接失败或者其他错误,需要检查设置的推流地址是否出错,或者检查服务器防火墙是否开放对应端口;

3.jpg

2、测试是否能够播放,使用MediaElement.js播放器,将下面html部署到同一服务器下,否则会报跨域的错误,注意修改src的播放地址

index.html
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>m3u8测试播放</title>
    <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/mediaelement/4.2.9/mediaelementplayer.min.css">
    <script src="https://cdn.bootcdn.net/ajax/libs/mediaelement/4.2.9/mediaelement-and-player.min.js"></script>
</head>
<body>
    <p>m3u8播放</p>
    <video id="video1" controls data-setup="{}" width="960" height="400">
        <source src="http://192.168.10.129:8083/live/home.m3u8" type="application/x-mpegURL"></source>
    </video>
</body>
<script>
    var player = new MediaElementPlayer('video1', {
        success: function (mediaElement, originalNode, instance) {
            // do things
        }
    });
</script>
</html>

3、html部署后直接访问网页地址,点击播放,我这里是部署在根目录,所以是 http://192.168.10.129/,测试可播放

4.jpg

作者:qq_763124572

原文链接:https://blog.csdn.net/qq_27209011/article/details/109814683


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   新浪科技讯北京时间1月4日上午消息,据报道,谷歌挖来了长期负责微软人工智能伦理工作的米拉·雷恩(MiraLane),加入该公司的技术和社会问题团队。  此举正值谷歌及整个科技行业因为日益复杂的人工智能模型而面临伦理挑战之际。  雷恩之前在微软领导一个综合学科团队,负责与伦理数据收集、生成式人工智能数据、人脸识别和负责任产品设计有关的问题。她加入谷歌后将向詹姆斯·曼伊卡(JamesManyika)汇报工作,后者一年前加入谷歌,出任技术及社会高级副总裁。这个成立不久的团队还吸引了苹果搜索业务前负责人斯里尼瓦森·万卡塔查理(SrinivasanVenkatachary)加盟。  雷恩本人已经确认...
            0 0 853
            分享
          • 简介Loadrunner是一种预测系统行为和性能的负载测试工具,它可以轻松创建虚拟用户、创建真实的负载、定位性能问题、重复测试保证系统的高性能。LR与JM对比组成Vuser GeneratorC语言脚本开发的Controller指挥官的作用,控制执行场景Analysis收集测试数据,进行结果分析的什么时候可以开始执行性能测试功能测试通过;一般需要进行性能测试的系统,都是用户量比较大、业务使用比较频繁、比较重要的功能模块。使用Loadrunner的步骤制定性能测试计划—>开发测试脚本—>设计测试场景—>执行测试场景—>监控测试场景—>分析测试结果为什么用事务事务Tr...
            13 13 1497
            分享
          • 1. 需求符合度测试各级菜单名称显示是否按照需求说明书规定的设计,并且没有遗漏和多余;各级菜单所完成的功能是否按照需求说明书规定的设计,并且没有遗漏和多余;各级菜单的操作顺序和操作方式是否按照需求说明书规定的设计,并且正确。2. 页面测试页面元素对齐方式是否符合规范的要求,或者操作方便性文字的字体,标点符号是否统一有误错别字和乱码焦点是否定位在默认操作项上按TAB键是否有正常切换焦点(自上而下,自左而右)标题是否正确无误,关注以下部分:①是否和菜单一级;②同一个case的多个页面标题是否一致时间格式是否正确(特别是海外版,如果时间输入栏有掩码,要检查掩码的正确性)是否正确支持常用的显示比例: ...
            0 0 1605
            分享
          •   优惠券冒烟测试  后台添加优惠券,前端领取,消费并成功扣除对应金额,如果冒烟测试不通过不进行下面的测试。  优惠券基本信息测试  (1)优惠券名称  (2)优惠券副标题  (3)优惠券类型,是满减,首单减,还是折扣类型  (4)优惠券数量  (5)优惠券使用说明  优惠券使用规则  (1)用户类型:新用户、老用户、不同等级用户、不限用户  (2)优惠券能够使用的商品类型  (3)每人限领张数  (4)优惠券有效期  优惠券类型  使用会员抵扣券跳转到购买会员界面,会员商品支付时抵扣相应金额。  使用方案抵扣券跳转到方案推荐的深度页面,选择方案支付时抵扣相应金额。  查看可用的优惠券,可选择...
            0 0 7661
            分享
          • 引入问题相信不少开发看到测试提的bug单都少不了吐槽:这题的是什么玩意啊?也相信不少测试工程师在测试过程中,遇到问题不做二次确认,直接提个bug单。接下来,让我们作为旁观者,看看张三的问题: 张三在发现bug之后,立马给开发提了bug,不去排查bug产生的原因。这样就会产生三个问题:张三未经过二次验证确认问题的有效性,可能会导致把无效的问题提给开发。张三不去排查问题出现的原因,可能会将问题指给错误的开发。影响彼此工作的效率好不容易发现了有效的问题,简单一句话将问题描述并提单,又出了问题:在提问题单的时候,如果描述不清楚的话,开发很难复现问题。影响彼此工作的效率:开发无法复现问题,又需...
            10 10 1967
            分享
      • 51testing软件测试圈微信