基于SRS+OBS搭建直播系统
这段时间与视频,直播相关的技术不可谓不热,今天我们就近距离接触下,尽早搭上这班车!
我们先看一张效果图
左边是OBS 推流端,右边是VLC播放器,稍微有延迟!
本文是基于VMware(12.5.7)+Ubuntu(16.04)搭建
一:准备:
1.VMware(12.5.7)
2.Ubuntu(16.0.4)
3.Git
4.RTMP媒体服务器(SRS)
5.推流端(OBS)
6.拉流端(VLC)
二:安装
2.1:安装VMware
2.1.1:下载VWware
VWware官网:https://www.vmware.com/cn.html
2.1.2:安装破解
比较简单,请自行百度,此处提供参考:虚拟机安装教程
2.2:安装Ununtu
2.2.1:下载
Ubuntu官网:https://www.ubuntu.com/download
2.2.2:安装
比较简单,请自行百度,此处提供参考:VMware安装Ubuntu
2.2.3:其他
Ubuntu如何设置全屏显示,搜狗输入法安装,联网等不在次节课范畴,请自行百度解决!
2.3:安装Git
2.3.1:ALT+Control+T 调出终端
2.3.2:输入git查看系统是否已经安装
2.3.3:如果未安装,执行“sudo apt-get install git”指令,安装git,出现如图提示输入“Y”
2.3.4:输入"git --version"查看当前版本
2.4:安装SRS
srs Github地址为:https://github.com/ossrs/srs,里面有使用指导,按照安装步骤操作即可
2.4.1:新建本地SRS存放文件夹,文件名live
2.4.2:打开终端,进入live文件夹
2.4.3:执行"git clone https://github.com/ossrs/srs &&cd srs/trunk"指令,时间较长8分钟左右
2.4.4:执行"./configure && make"编译SRS 2.4.5:执行"./etc/init.d/srs start"或“ ./objs/srs -c conf/srs.conf”启动服务
其他指令如:
停止 ./etc/init.d/srs stop
重启 ./etc/init.d/srs restart
2.5:安装OBS
2.5.1:安装OBS首先安装FFMPEG
2.5.1.1:添加源:sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
2.5.1.2:更新源:sudo apt-get update
2.5.1.3:安装FFPMEG:sudo apt-get install ffmpeg
2.5.2:安装OBS
2.5.2.1:添加源:sudo add-apt-repository ppa:obsproject/obs-studio
2.5.2.2:更新源:sudo apt-get update
2.5.2.3:安装:sudo apt-get install obs-studio
2.5.3:安装成功之后重启才能看到,稍后上传图片
2.6:安装VLC
2.6.1:VLC官网地址:http://www.videolan.org/
2.6.2:下载对应版本的VLC,此处选择Linux
2.6.3:点击下载
2.6.4:开始安装
2.6.5 重启查看VLC
三:设置
3.1:OBS 推流端配置
3.1.1:打开终端输入"ifconfig -a"查看本机IP地址
3.1.2:打开OBS在来源中选择一种,本次选择幻灯片
3.1.3:点击设置,打开设置选项卡,流选项中类型选择自定义流媒体服务器,url为
rtmp://你的ip/你喜欢的url
3.1.4:在设置选项卡中,设置推送流的帧率等
3.1.5:检查无误后,点击开始推流(请确保srs已开启)
- 1
- 2
- 3
- 4
- 5
- 6
四:测试
VLC测试推流结果
4.1:打开VLC,选择打开媒体->网络,在网络协议中输入推流地址
4.2:查看显示结果(左侧为推流,右侧为VLC显示,有延迟)
参考:
原文:https://blog.csdn.net/calvin_zhou/article/details/78613422
基于SRS+OBS搭建直播系统的更多相关文章
- VLC-DSS搭建直播系统中链路断开影响测试
VLC-DSS搭建直播系统中链路断开影响测试 系统环境搭建如图所示.计算机77上运行VLC从摄像机51上取流,推送给一级DSS服务器30:二级DSS服务器78从一级DSS服务器30上取流转发.(其配置 ...
- 转: 基于nginx的hls直播系统
转自:http://blog.csdn.net/cjsafty/article/details/9108587 看点: 1. 详细解解答了 nginx rtmp配置过程. 前写了一篇基于nginx的h ...
- 在Ubuntu下使用nginx-rtmp-module搭建直播系统
直播系统最简单地包括推流和拉流,在这里先使用nginx-rtmp-module作为流媒体服务器. 流媒体服务器搭建 1. nginx-rtmp-module下载和安装 源码地址:https://git ...
- rtmp搭建直播系统
开发环境 Ubuntu 14.04 server nginx-1.8.1 nginx-rtmp-module nginx的服务器的搭建 安装nginx的依赖库 sudo apt-get update ...
- 搭建HTTP Live Streaming直播系统
最近,需要将苹果的HTTP Live Streaming系统搭建起来.完全没有头绪,故第一步就是学习. 一.学习资料 官网资料 1. http://developer.apple.com/resour ...
- 基于LNMP架构搭建wordpress博客之安装架构说明
架构情况 架构情况:基于LNMP架构搭建wordpress系统 软件包版本说明: 系统要求 : CentOS-6.9-x86_64-bin-DVD1.iso PHP版本 : php-7.2.29 ...
- 使用ffmpeg搭建HLS直播系统
[时间:2018-04] [状态:Open] [关键词:流媒体,stream,HLS, ffmpeg,live,直播,点播, nginx, ssegment] 0 引言 本文作为HLS综述的后续文章. ...
- windows平台简易直播系统搭建
最近做直播系统的朋友很多,正好前端时间也在做这一块,写片文章分享下开发心得,以为后用. 直播系统我将它分为前堆推流,后台服务,客户端播放三大部分.前端推流基于ffmpeg,后台服务 使用crtmp服务 ...
- 基于CentOS搭建基于 ZIPKIN 的数据追踪系统
系统要求:CentOS 7.2 64 位操作系统 配置 Java 环境 安装 JDK Zipkin 使用 Java8 -openjdk* -y 安装完成后,查看是否安装成功: java -versio ...
随机推荐
- Error occurred during initialization of VM Could not reserve enough space for object heap
Error occurred during initialization of VM Could not reserve enough space for object heap Java虚拟机(JV ...
- [java,2019-01-25] 图片和二进制互转
import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.ByteArrayOu ...
- DLC 数制与数制的转换
进位计数值:用进位的方法进行计数 常用数值有十进制.二进制.八进制.十六进制等. 进位计数制把包括基数与权两个基本问题.
- PG数据基本命令——连接(笔记)
在PostgreSQL中,有以下类型的连接: 内连接(INNER JOIN) 左外连接(LEFT OUTER JOIN) 右外连接(RIGHT OUTER JOIN) 全连接(FULL OUTER J ...
- json jmespath的使用
在接口测试的过程中,我们经常会接触到json格式respones,我们会经常去做取JSON中某个值的操作,可以用jmespath分析.转换和选择性的提取JSON数据进行操作,功能非常强大,易读. 一. ...
- leetcode top 100 题目汇总
首先表达我对leetcode网站的感谢,与高校的OJ系统相比,leetcode上面的题目更贴近工作的需要,而且支持的语言广泛.对于一些比较困难的题目,可以从讨论区中学习别人的思路,这一点很方便. 经过 ...
- 深度学习实践-物体检测-faster-RCNN(原理和部分代码说明) 1.tf.image.resize_and_crop(根据比例取出特征层,进行维度变化) 2.tf.slice(数据切片) 3.x.argsort()(对数据进行排列,返回索引值) 4.np.empty(生成空矩阵) 5.np.meshgrid(生成二维数据) 6.np.where(符合条件的索引) 7.tf.gather取值
1. tf.image.resize_and_crop(net, bbox, 256, [14, 14], name) # 根据bbox的y1,x1,y2,x2获得net中的位置,将其转换为14*1 ...
- 记一次laravel-jwt修改黑名单所用redis数据库
场景是这样的,我用tymon/jwt包做鉴权.jwt是自编码token,过期前想要强制失效只能将其加入黑名单中,黑名单一般用缓存存储. 但会有一个问题,若某种意外情况不小心执行了php aritsan ...
- python拼接字符串方法汇总
python拼接字符串一般有以下几种方法: 1.直接通过(+)操作符拼接 s = 'Hello'+' '+'World'+'!' print(s) 输出结果:Hello World! 这种方式最常用. ...
- SQLServer与MySQL约束/索引命名的一些差异总结
约束是数据库完整性的保证,主要分为:主键/外键/唯一键/默认值/check等类别,约束是一个逻辑概念,表示数据的某些特性(不能为空,唯一,必须满足某些条件等等),索引是一个逻辑与物理概念的结合,逻辑上 ...