直播需要
直播服务器:云主机
OBS:推流工具:把直播数据发给观众
VLC:拉流工具: 通过VLC把主播推送的数据拉取下来
使用到了rtmp协议还有video标签
rtmp协议:实现直播的协议
打开obs设置推流地址
rtmp://自己的云主机公网地址:1935/live
使用云主机的centos实现直播服务器
注:可以在本地连接你的云主机或者使用xshell连接
搭建环境部署
cd /home //进入home文件夹下
mkdir rtmp-tools //创建文件夹
下载nginx
nginx:高性能多路复用服务器,让你支持同时响应多个客户连接
支持多线程、多进程开发模式
wget http://nginx.org/download/nginx-1.10.3.tar.gz //下载命令
下载直播模块
git clone https://github.com/arut/nginx-rtmp-module
解压下载好的nginx和rtmp直播模块
tar -zxvf nginx-1.10.3.tar.gz nginx-1.10.3/ //解压nginx
unzip nginx-rtmp-module-master.zip // 解压rtmp
创建一个nginx的安装目录
mkdir /usr/local/nginx-rtmp
在配置前安装依赖
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
配置nginx安装过程,搭配直播模块使用(nginx-rtmp-module)
cd nginx-1.10.3
./configure --add-module=/home/rtmp-tools/nginx-rtmp-module-master/ --with-http_ssl_module --prefix=/usr/local/nginx-rtmp
编译
make
真正安装
make install
修改nginx配置文件,让nginx支持直播功能
/usr/local/nginx-rtmp/conf
vim nginx.conf
rtmp {
server {
listen 1935;
application live {
live on;
record off;
}
}
}
根据该配置文件启动服务
/usr/local/nginx-rtmp/sbin/nginx -c /usr/local/nginx-rtmp/conf/nginx.conf
检查服务是否启动
ps -ef | grep nginx
// 查看进程的命令,看一个服务是否正常执行,那么就看他的进程有没有启动
服务未启动
服务已经启动
打开obs设置推流地址
开始推流
使用VLC拉流
设置拉流地址
拉流成功
使用代码拉流
<video id="my-video" class="video-js vjs-default-skin" controls preload="auto" >
<!-- 直播地址就是nginx映射后的播放地址,注意后缀为直播流的m3u8 -->
<source src="rtmp://云主机公网地址:1935/live/test.m3u8" >
</video>