CentOS7下利用SRS搭建直播流媒体服务器

更多技术干货,第一时间送达

SRS is a RTMP/HLS/WebRTC/SRT/GB28181 streaming cluster, high efficiency, stable and simple.

SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码

1)SRS提供了丰富的接入方案将RTMP流接入SRS, 包括推送RTMP到SRS、推送RTSP/UDP/FLV到SRS、拉取流到SRS

2)SRS还支持将接入的RTMP流进行各种变换,譬如将RTMP流转码、流截图、 转发给其他服务器、转封装成HTTP-FLV流、转封装成HLS、 转封装成HDS、转封装成DASH、录制成FLV/MP4

3)SRS包含支大规模集群如CDN业务的关键特性, 譬如RTMP多级集群、源站集群、VHOST虚拟服务器 、 无中断服务Reload、HTTP-FLV集群

4)此外,SRS还提供丰富的应用接口, 包括HTTP回调、安全策略Security、HTTP API接口、 RTMP测速。

5)SRS在源站和CDN集群中都得到了广泛的应用

GitHub地址
:https://github.com/ossrs/srs

CentOS7下利用SRS搭建直播流媒体服务器

1、下载SRS 源码包

https://github.com/ossrs/srs/archive/v3.0-r0.tar.gz

2、上传到CentOS7的服务器,进行解压

tar -zxvf srs-3.0-r0.tar.gz

cd srs-3.0-r0/trunk/

./configure

make

make install

3、设置服务开机自启动

ln -sf /usr/local/srs/etc/init.d/srs /etc/init.d/srs

cp -f /usr/local/srs/usr/lib/systemd/system/srs.service /usr/lib/systemd/system/srs.service

systemctl daemon-reload

systemctl enable srs

systemctl start srs

4、用rpmfusion源安装ffmpeg

这里为了方便起见就不采用源码方式编译安装ffmpeg了,直接使用rpmfusion源安装ffmpeg 具体命令如下

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum install epel-release

wget https://mirrors.aliyun.com/rpmfusion/free/el/rpmfusion-free-release-7.noarch.rpm

rpm -ivh rpmfusion-free-release-7.noarch.rpm

yum install ffmpeg

5、使用FFMPEG命令推流

ffmpeg -re -i /data/TenetTrails.mp4 -vcodec copy -acodec copy -f flv -y rtmp://192.168.31.80/live/livestream

上传TenetTrails.mp4文件到服务器,ffmpeg -re -i /data/TenetTrails.mp4 -vcodec copy -acodec copy -f flv -y
rtmp://192.168.31.80/live/livestream进行推流

6、使用VLC观看RTMP流

RTMP流地址为
rtmp://192.168.31.80/live/livestream

7、使用VLC观看HLS流

先停止systemctl stop srs 需要单独启动srs,只加载hls.conf

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

当然你也可以将hls配置文件添加到srs.conf 接下来使用FFMPEG命令推流

ffmpeg -re -i /data/TenetTrails.mp4 -vcodec copy -acodec copy -f flv -y rtmp://192.168.31.80/live/livestream

VLC打开网络串流 HLS流地址为
http://192.168.31.80:8080/live/livestream.m3u8

8、iftop命令查看实时网络流量

iftop -i ens33 -N -n -m 10M -P

更多用法参考官方wiki

(0)

相关推荐

  • 用Go实现一个直播系统难吗?看看这个开源项目

    今天 以下文章来源于Go招聘 ,作者欧盆索思 Go招聘Golang 相关求职和招聘,以及面试题.经验分享,Go 语言其他知识和职场也是值得分享的. 这几年直播真的是不要太火,相关技术也很成熟.但没有接 ...

  • 音视频开发——通信直播协议和视频推流丨RTMP-RTSP

    近年来直播已成为互联网行业的大热话题,直播答题.游戏直播.竞赛直播,抖音直播,直播教育等层出不穷,直播早已成为人们耳熟能详的技术.事实上直播的兴起不仅与新时代人们要求为自己代言的心理有关,同时也得益于 ...

  • NGINX MPEG-TS Live Module & Dash JS

    直播流程 视频直播:采集.前处理.编码.传输.解码.渲染 采集: 一般是由客户端(IOS.安卓.PC或其它工具,如OBS)完成的,iOS是比较简单的,Android则要做些机型适配工作,PC最麻烦各种 ...

  • 手把手带你实现srs流媒体推流和拉流操作

    一.前言 大家晚上好,今天给大家来一个简单的流媒体的推流和拉流的实际操作,废话不多说,赶紧上车! 二.srs流媒体服务器 1.什么是srs流媒体服务器: srs(Simple Realtime Ser ...

  • Ubuntu 18.04下使用Apache搭建一个web服务器

    几个必要的概念 https://blog.csdn.net/weixin_39212776/article/details/81192847 web服务器 以我之见,web服务器就是运行在计算机上的一 ...

  • 手把手搭建RTSP流媒体服务器

    0.引言 本文主要讲解如何搭建RTSP流媒体服务器的过程,使用开源项目ZLMediaKit.通过这个开源项目,推RTSP流到服务器,然后拉流端可以拉取RTSP.RTMP等流. ZLMediaKit码云 ...

  • 直播平台的流媒体服务器的作用

    直播视频的格式多种多样,不管是移动端还是PC端都不可能支持这么多样化格式的视频,因此流媒体服务器的首要任务就是将视频更改为统一的格式,从而解决播放器格式不统一的问题,在不改变原视频的画质情况下,更改视 ...

  • 如何利用直播源码成功搭建直播平台?

    直播源码的成功运用,有以下几点: 开源:开放源代码也称为源代码公开,指的是一种软件发布模式.一般的软件仅可取得已经过编译的二进制可执行档,通常只有软件的作者或著作权所有者等拥有程序的原始码.有些软件的 ...

  • 搭建直播平台,流媒体对直播的重要性

    流媒体是搭建直播平台不可或缺的一部分,流媒体又称为流式媒体,是多媒体的一种,可以实现搭建直播平台边播边看的需求,所以常被应用于搭建直播平台中.流媒体中的流是指视频的传输方式,它分为直播和点播两个部分, ...

  • 在线直播源码,CDN服务器和流媒体服务器的工作区别

    直播行业的火热发展带给周边产品新的发展机会的同时,也创造了新的竞争关系,在线直播源码团队之间的竞争.服务器商家之间的竞争.三方SDK商家之间的竞争,大家都在不断提升自己的服务质量以便吸引更多的客户. ...

  • Ubuntu下SVN+apache2搭建加密服务的SVN服务器

    https://blog.csdn.net/dgj8300/article/details/97005834 安装SVN/apach2 sudo apt install subversion apac ...

  • 旧电脑废物利用之:改变成服务器!云服务器搭建!

    折腾一下 因为自己家里有一台很旧很旧的闲置笔记本,刚好听说电信的宽带可以免费申请到公网ip,同时家里的光猫和路由这次也从百兆换成了千兆,所以就想着搭建一套属于自己的云服务器放在家里,希望能够从外网访问 ...

  • CentOS 7下简答搭建DNS服务器

    一.DNS相关介绍 DNS(Domain Name System)域名系统协议,作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用挨个记住IP地址.通过主机名,最终得到 ...