基于SRS的视频直播服务器搭建

2023-11-14

srs提供的一个demo实例,包括实时流的rtmp播放, hls播放,视频会议, ffmpeg视频变换, jwplayer播放, OSMF播放,vlc播放等等功能.下面是在Centos 6.x环境下的编译搭建流程。

1.下载或更新源码或者使用git更新已有代码:

git clone https://github.com/winlinvip/simple-rtmp-server
cd simple-rtmp-server/trunk
或者使用git更新已有代码:

git pull

2.编译srs

bash scripts/build.sh

编译结果如下:

3.启动SRS的DEMO,启动ffmpeg/api-server/srs等

bash scripts/run.sh

启动结果截图



4,win下配置host文件以使用demo.srs.com这个域名进行演示:

# windows: C:\Windows\System32\drivers\etc\hosts
# where server ip is 192.168.1.120
192.168.1.120 demo.srs.com


5.打开浏览器观看DEMO效果
在浏览器地址栏中访问SRS的DEMO:http://demo.srs.com:8085

播放效果如下:



默认的播放器流演示:
    http://demo.srs.com:8085/players/srs_player.html?vhost=players
推流(主播)应用演示:
    http://demo.srs.com:8085/players/srs_publisher.html?vhost=players
视频会议(聊天室)应用演示:
    http://demo.srs.com:8085/players/srs_chat.html?vhost=players
默认的测速应用演示:
    http://demo.srs.com:8085/players/srs_bwt.html?key=35c9b402c12a7246868752e2878f7e0e&vhost=bandcheck.srs.com


6,停止SRS的DEMO

bash scripts/stop.sh


参考资料:https://github.com/winlinvip/simple-rtmp-server/wiki/SampleDemo

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于SRS的视频直播服务器搭建 的相关文章

  • RTMP协议封装H264和H265协议详解

    RTMP协议封装H264和H265协议详解 文章目录 RTMP协议封装H264和H265协议详解 1 RTMP和FLV 2 RTMP协议封装H264视频流 2 1 RTMP发送AVC sequence header 2 2 RTMP发送AV
  • ST源码分析-Clion调试

    lookupdns 是 ST 的一个示例程序 由于 ST 是 makefile 的项目 并没有提供 CMake 文件 所以先演示 一下 如何使用 Clion 来调试 Makefile 的项目 也可以使用 gdb 调试 不过我个人习惯 用 C
  • GB/T28181-2022协议版本标识X-GB-Ver解读

    GB28181 2022相对2016 其中有个变化是 报文中携带协议版本标识 X GB Ver 3 0 3 0 2022 2 0 2016 为便于联网设备或服务器之间互相识别对方支持的协议版本 在SIP注册及其响应消息 无论是成功或失败 头
  • 【技术分享】如何实现功能完备性能优异的RTMP、RTSP播放器?

    技术背景 这几年 我们对接了太多有RTSP或RTMP直播播放器诉求的开发者 他们当中除了寻求完整的解决方案的 还有些是技术探讨 希望能借鉴我们播放端的开发思路或功能特性 完善自己的产品 忙里偷闲 今天我们就再聊一聊老生常谈的问题 如何实现功
  • RTSP和RTP、RTCP协议介绍

    一 RTSP 1 简介 RTSP Real Time Stream Protocol 协议是一个基于文本的多媒体播放控制协议 属于应用层 RTSP以客户端方式工作 对流媒体提供播放 暂停 后退 前进等操作 它主要用来控制具有实时特性的数据的
  • WebRTC建立会话流程分析

    WebRTC建立会话流程总结 了解如何运行PeerConnection Demo后 熟悉运行流程可以做为深入学习WebRTC的切入点 本节重点解释客户端双方建立会话时交互的主要信令 控制会话的文本协议 和与信令相关的 WebRTC API
  • Android平台GB28181设备接入模块分辨率发生变化怎么办?

    技术背景 我们在做Android平台gb28181设备接入模块的时候 遇到这样的情况 比如横竖屏分辨率不锁定 采集摄像头的时候 可以实现 横屏状态采集横屏 竖屏状态采集竖屏 简单来说 横屏状态比如采集的1280 720的 竖屏状态 采集的数
  • WebBrowser控件使用详解

    WebBrowser控件使用详解 方法 说明 GoBack 相当于 IE的 后退 按钮 使你在当前历史列表中后退一项 GoForward 相当于IE的 前进 按钮 使你在当前历史列表中前进一项 GoHome 相当于IE的 主页 按钮 连接用
  • 视频中的I帧、B帧、P帧

    视频文件都是一帧一帧存储的 为了使文件的大小减小 通常会对文件进行压缩 mpeg4 MP4 文件中的每一帧开始都是固定的 00 00 01 b6 那么在接下来的每一帧分别是什么帧呢 I帧 B帧 P帧 一般在这固定帧的后面2bit就是标志是什
  • RTC和RTMP

    RTC 直播发布流程 offer answer 模型 直播订阅流程 1 使用UDP私有协议来进行媒体拉流 2 适用高互动性的直播场景 如在线教育 电商直播 远程医疗 3 低延时 lt 300ms 和无卡顿 4 快速切换分辨率 无需写上 服务
  • ffmpeg命令行map参数的使用

    介绍 理解 map参数的最好办法就是想像一下怎么去告诉ffmpeg你要从源文件中选择 拷贝哪个流到输出文件 输出文件的stream顺序取决于在命令行中 map的参数顺序 下面有一些例子 默认 默认操作 没有指定map参数 比如 ffmpeg
  • RTP时间戳概念

    RTP协议不依赖于底层协议 由于UDP包的快速 时实性高的特点 它通常和UDP结合在一起 作为UDP的上层载体数据的形式传播 typedef struct rtp header t uint32 t v 2 protocol version
  • 前端实现预览功能,播放rtsp视频流(node.js+ffmpeg+flv.js)

    实现思路 获取摄像头rtsp流 通过node js ffmpeg转码 通过哔哩哔哩flv js播放 1 获取摄像机RTSP流 之前文章有说明不多阐述 2 配置流媒体服务器 1 下载安装node js 运行node js 网上教程很多自行下载
  • Android平台一对一音视频通话方案对比:WebRTC VS RTMP VS RTSP

    一对一音视频通话使用场景 一对一音视频通话都需要稳定 清晰和流畅 以确保良好的用户体验 常用的使用场景如下 社交应用 社交应用是一种常见的使用场景 用户可以通过音视频通话进行面对面的交流 在线教育 老师和学生可以通过音视频通话功能进行实时互
  • 视频编码格式发展史

    1 编码标准之战 想预测未来 就回顾历史 先来看看H 264这些编码的从标准化到现在普及的过程 人们一直在想尽办法提高视频编码的效率 让它在尽可能小的体积内提供最好的画面质量 从而满足人们对于视频传输 存储的需求 长期以来 视频编码标准主要
  • Android前端音视频数据接入GB28181平台意义

    技术背景 在我们研发Android平台GB28181前端音视频接入模块之前 业内听到最多的是 如何用Android或者Windows端 在没有国标IPC设备的前提下 模拟GB28181的信令和媒体流交互流程 实现GB28181整体方案的测试
  • Webrtc从理论到实践六: Webrtc官方demo运行

    系列文章目录 Webrtc从理论到实践一 初识 Webrtc从理论到实践二 架构 Webrtc从理论到实践三 角色 Webrtc从理论到实践四 通信 Webrtc从理论到实践五 编译webrtc源码 文章目录 系列文章目录 操作步骤 总结
  • 元宇宙时代超高清视音频技术白皮书关于流媒体协议和媒体传输解读

    流媒体协议 元宇宙业务场景对流媒体传输的实时性和互动性提出了更高的要求 这就需要在传统的 RTMP SRT HLS 等基础上增加实时互动的支持 实时互动 指在远程条件下沟通 协作 可随时随地接入 实时地传递虚实融合的多维信息 身临其境的交互
  • GB28181状态信息报送解读及Android端国标设备接入技术实现

    今天主要聊聊GB T28181状态信息报送这块 先回顾下协议规范相关细节 然后再针对代码实现 做个简单的说明 状态消息报送基本要求 当源设备 包括网关 SIP设备 SIP客户端或联网系统 发现工作异常时 应立即向本 SIP监控域 的SIP服
  • 浅谈音视频开发入门基础及进阶资源分享

    导言 音视频开发涉及的知识面比较广 知识点又相对独立琐碎 入门门槛相对较高 想要对音视频开发具有深入全面的了解 需要在行业深耕多年 本文将简单介绍音视频的采集 编解码 传输 渲染四个技术点并对涉及到的知识点和原理进行解释 希望你可以对音视频

随机推荐

  • python是一门机器语言_python是一门怎样的编程语言?

    大家应该都听说过python语言 也知道它是一门非常适合零基础学习的语言 但是对于没有接触过的人来说可能就疑惑python到底是一门什么样的编程语言 1 跨平台 跨平台不依赖操作系统和硬件环境 某个操作系统环境下开发的应用 放在其他的系统中
  • angular中的组件嵌套

    1 创建3个包 header module main module sliderbar module 2 在header module创建三个组件 header center heder left header right 3 z将三个组件
  • BP神经网络回归预测-MATLAB代码实现(代码完整直接可用,注释详细,可供新手学习)

    一 前言 代码获取 私信或附评论区 BP神经网络预测回归MATLAB代码 代码完整可用 复制后即可运行使用 操作简单 1 BP神经网络的知识想必不用再过多介绍 本篇文章从实际应用的角度 针对新手应用者 针对不需要过多了解BP 但是需使用MA
  • Java-主流框架—(4)SpringMVC

    1 SpringMVC概述 三层架构 表现层 负责数据展示 业务层 负责业务处理 数据层 负责数据操作 MVC Model View Controller 一种用于设计创建Web应用程序表现层的模式 Model 模型 数据模型 用于封装数据
  • javaScript基础面试题 --- JS作用域

    面试10家公司 得有8家会问到作用域的题 所以说JS的作用域一定要弄清楚 非常重要 1 除了函数之外 JS没有块级作用域 2 作用域链 内部可以访问外部的变量 但是外部不能访问内部变量 如果内部有 优先内部的 如果内部没有 就先查找外部的
  • 基于深度学习的恶意软件检测

    深度神经网络可以有效地挖掘原始数据中的潜在特征 而无需大量数据预处理和先验经验 神经网络在计算机视觉 语音识别和自然语言处理方面取得了一系列的成功 当然 成功的原因是多方面的 其中的一个因素就是神经网络具有从诸如像素或单个文本字符之类的原始
  • 【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(九)

    整理不易 希望对各位学习软件测试能带来帮助 软件测试知识持续更新 第八章 自动化测试高级应用 第一节 自动发邮件功能 8 1 1 文件形式的邮件 8 1 2 HTML 形式的邮件 8 1 3 获取测试报告 8 1 4 整合自动发邮件功能 第
  • 数据结构中二叉树实现及部分操作

    谈二叉树之前 我们先来看看树的定义 树 由N N gt 0 个结点构成的集合 对N gt 1的树 1 有一个特殊的结点 称为根结点 根节点没有前驱结点 2 除根节点外 其余结点被分成M M gt 0 个互不相交的集合T1 T2 Tm 其中每
  • 蓝桥杯--省赛题4

    今天来看道蓝桥杯的动态规划题 题目描述 小蓝在一个 nn 行 mm 列的方格图中玩一个游戏 开始时 小蓝站在方格图的左上角 即第 11 行第 11 列 小蓝可以在方格图上走动 走动时 如果当前在第 rr 行第 cc 列 他不能走到行号比 r
  • microsoft office 卸载不了

    microsoft office 包括常用的office组件 project visio 等的卸载不是件轻松事 有可能卸载不了 右不会有任何提示 微软也知道自己的东西不好卸载 于是 提供的fix工具 office 2010 的fix工具如下
  • 【开机启动】win11开机启动软件,win11开机启动bat脚本(开机启动vbs文件)

    目录 编辑bat脚本 编辑vbs脚本 让vbs脚本开机启动 编辑bat脚本 简单介绍一下 是注释前缀 echo 是输出内容到控制台 等同于print echo off可以关闭路径显示 自己尝试写和不写就行 timeout t num num
  • 0126 线性表

    目录 2 线性表 2 1线性表的定义和基本概念 2 1部分习题 2 2线性表的顺序表示 2 2部分习题 2 3线性表的链式表示 2 3部分习题 2 线性表 2 1线性表的定义和基本概念 2 1部分习题 1 线性表是具有n个 的有限序列 A
  • 用看黑丝的时间 我搞懂了JVM内存

    JVM内存区域主要分为线程私有区域 程序计数器 虚拟机栈 本地方法区 线程共享区域 Java堆 方法区 直接内存 1 程序计数器 线程私有区域 是一块较小的内存空间 是当前线程所执行字节码的行号指示器 每条线程都有一个独立的程序计数器 如果
  • 【总结】用树形图和剪枝操作理解完全背包问题中组合数和排列数问题

    文章目录 TOC 前言 一 完全背包中的排列数和组合数问题 1 1 问题来源 1 2 两个for循环先后顺序分析 1 2 1 先遍历背包后遍历物品得到排列数 1 2 2 先遍历物品后遍历背包得到组合数 小结 前言 建议先看理清0 1背包问题
  • Linux切换用户/超级用户权限

    在Linux操作系统 CentOS8 上安装yum工具时出现了问题 错误为 Error This command has to be run with superuser privileges under the root user on
  • npm切换源,nrm安装、配置及使用

    文章目录 人工智能福利文章 1 速度太慢 2 手动切换太麻烦 3 切换npm源推荐使用nrm 3 1 nrm安装方法 3 2 查看可选npm源 3 3 切换npm源 3 4 增加npm源 3 5 删除npm源 3 6 测试npm源速度 脑筋
  • 【UE4】【C++】PlayerController、AIController获取玩家对应的Pawn

    先创建一个基本的C 类 Tank 因为要对Tank进行各种操作 移动 寻找目标 所以选择了Pawn类型 PlayerController 再创建一个C 类 TankPlayerController 用以控制玩家操作的对象 Tank 创建好后
  • 创业公司融资,股权是如何一步步被稀释的?

    转自 https 36kr com p 5054730 融资过程中 股权的稀释总是难免的 本文作者 新元 股书 Kapbook 微信ID Kapbook 完整的股权激励在线解决方案 很多人并没有意识到 他们在加盟公司时拿到的期权比例 并非最
  • 记一次事务报错问题 Transaction synchronization is not active

    问题场景 在一次请求的返回结果中出现了这个错误信息 Transaction synchronization is not active 意思是 事务同步器没有激活 看着不像是业务代码里返回的提示 猜测是spring事务框架报出来的异常没有被
  • 基于SRS的视频直播服务器搭建

    srs提供的一个demo实例 包括实时流的rtmp播放 hls播放 视频会议 ffmpeg视频变换 jwplayer播放 OSMF播放 vlc播放等等功能 下面是在Centos 6 x环境下的编译搭建流程 1 下载或更新源码或者使用git更