1. 准备环境
2. 安装环境
2.1 上传所有模块到系统中
mkdir /opt/nginx
cd /opt/nginx
rz nginx-1.8.1.tar.gz
rz nginx_mod_h264_streaming-2.2.7.tar.gz
rz yamdi-1.9.tar.gz
rz nginx-rtmp-module-master.zip
2.2 安装FLV模块
tar -zxvf yamdi-1.9.tar.gz
cd yamdi
./configure
mark && make install
2.3 解压MP4模块
tar -zxvf nginx_mod_h264_streaming-2.2.7.tar.gz
处理一个bug
cd /opt/nginx/nginx_mod_h264_streaming/src
注释157行-161行
/* TODO: Win32 */
// if (r->zero_in_uri)
// {
// return NGX_DECLINED;
// }
2.4 解压nginx
tar -zxvf nginx-1.8.1.tar.gz
tar -zxvf nginx_mod_h264_streaming.tar.gz
unzip nginx-rtmp-module-master.zip
2.5 安装nginx并添加模块
./configure --add-module=../nginx_mod_h264_streaming --add-module=../nginx-rtmp-module-master --with-http_ssl_module --prefix=/opt/software/nginx --with-http_flv_module --with-http_stub_status_module
注:如果编译报错, vim objs/Makefile (修改objs/Makefile文件, 去掉其中的"-Werror"), 然后就能够正常编译了.
2.6 播放配置
cd /opt/software/nginx/conf
vim nginx.conf
添加对FLV和MP4的支持
location ~ \.flv {
flv;
}
location ~ \.mp4$ {
mp4;
}
2.7 FFMPEG
上传
rz ffmpeg-4.2.2.tar.bz2
安装
yum install bzip2 #因为后缀是bz2的 要安装 bzip2
tar -jxvf ffmpeg-4.2.2.tar.bz2 #使用 -jxvf 解压bz2文件
cd ffmpeg-4.2.2 #进入目录
./configure --prefix=/opt/software/ffmpeg #配置 设置安装路径
make && make install #安装
3. 点播
上传测试MP4
cd /opt/software/nginx/html
rz test.mp4
4. 直播
4.1配置服务
cd /opt/software/nginx/conf
vim nginx.conf
rtmp {
server {
listen 1935; #监听的端口
chunk_size 4096;
application hls { #rtmp推流请求路径
live on;
hls on;
hls_path /opt/software/nginx/html/hls;
hls_fragment 5s;
}
}
}
mkdir /opt/software/nginx/html/hls
4.2 直播推流
设置场景
场景增加视频捕获设备,显示器捕获或窗口捕获
注:窗口黑屏解决方案
设备管理器中-->显示适配器-->独立显卡-禁用
设置推流地址
4.3 直播拉流
借用EV播放
输入拉流地址
点击开始观看直播