Loading

【软件安装】CentOS 7(Linux)上部署流媒体服务(Tengine、ffmpeg、Centos 7、nginx-http-flv-module、OBS)

Centos7+Tengine+Nginx-http-flv-module+ffmpeg+OBS搭建流媒体服务器

一、需求和背景

视频直播是基于领先的内容接入、分发网络和大规模分布式实时转码技术打造的音视频直播平台,提供便捷接入、高清流畅、低延迟、高并发的音视频直播服务。

直播是一个《讲师录制------推流------流媒体数据中心服务------拉流------分发给每个用户》,因此需要搭建数据流媒体服务,本着不用第三方(我也想用阿里云、各

种其他云服务器,奈何没钱)和没钱的原因

现在要求如下:

1、省钱、省钱、省钱。

2、一个讲师(主播)开播人数控制在1000人以内,最大不超过2000人。

3、主讲内容或者主播内容禁止外泄(内部视频,保存在自己内部分服务器上)

二、安装配置

 

三、

安装命令

yum -y install mariadb mariadb-server

 

#下载rtmp包
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
#解压下载包
unzip -o master.zip
#修改文件夹名
mv master nginx-rtmp-module


yum install -y unzip zip
#下载rtmp包
cd /usr/local
wget https://github.com/winshining/nginx-http-flv-module/archive/master.zip
#解压下载包
tar -zxvf master.zip
#修改文件夹名
mv master nginx-http-flv-module

 

cd /usr/local/src/tengine-2.3.0
./configure --add-dynamic-module=/usr/local/nginx-http-flv-module
./configure --add-module=/usr/local/nginx-http-flv-module
make
sudo make install

ffmpeg -re -i "/root/sop/live/user0001md5/push/love1.mp4" -vcodec libx264 -vprofile baseline -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 rtmp://39.98.237.120:1936/hls/paly

 


#安装epel包
yum install -y epel-release
#导入签名
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
#导入签名
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
#升级软件包
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
#更新软件包
yum update -y
#安装ffmpeg
yum install -y ffmpeg
#检查版本
ffmpeg -version

 

rpm -ivh nginx-http-flv-module-1.2.4-1.el6.x86_64.rpm


###--启动nginx服务
systemctl start nginx.service

###--设置开机自启动
systemctl enable nginx.service

###--停止开机自启动
# systemctl disable nginx.service

###--查看服务当前状态
systemctl status nginx.service

###--重新启动服务
systemctl restart nginx.service

###--查看所有已启动的服务
systemctl list-units --type=service


1、部署Nginx(PCRE+OpenSSL+zlib) +nginx-http-flv-module 流媒体
注意:nginx-http-flv-module 和nginx-rtmp-module原则上都可以,但是推荐使用nginx-http-flv-module 支持用户协议HTTP-FLV。
在类Unix系统上,需要GNU make,用于调用编译器来编译软件。
在类Unix系统上,需要GCC。或者在Windows上,需要MSVC,用于编译软件。
在类Unix系统上,需要GDB,用于调试软件(可选)。
FFmpeg或者OBS,用于发布媒体流。
VLC(推荐)或者flv.js(推荐),用于播放媒体流。
需要PCRE库、需要OpenSSL库、需要zlib库。
2、部署在Linux (推荐)
注意:FreeBSD/MacOS/Windows(受限,不推荐)
2、注意服务多对多的,讲师要求时多个的,所有要求有多个推流拉流地址
所有就目前而言

 

测试通过地址(必须条件):使用OBS可以推流、使用VLC可以播放流
OBS参考地址:https://help.aliyun.com/document_detail/45212.html?spm=a2c4g.11186623.2.15.45436812lXHLGQ
VlC参考地址:https://help.aliyun.com/document_detail/52142.html?spm=a2c4g.11186623.4.1.662b1445tlymkl

测试通过表示服务可用 我部署到./configure --prefix=/usr/local/nginx  --add-module=../nginx-rtmp-module   这条命令执行不下去了

 

 

 

rtmp://39.98.237.120:1935/hls/1223qweasdzxcgerfasdasdasdzxcert34wedfsdf.flv

/39.98.237.120:1936/stat

 

posted @ 2020-07-17 10:31  家秋  阅读(427)  评论(1编辑  收藏  举报