在centos上使用nginx-rtmp实现hls(Http live Streaming)直播
欢迎访问我的个人博客:xie-kang.com
原文地址
以下步骤建议在同一目录(如:~/Downloads)下执行(防止小白把目录弄混乱)
下载并解压nginx-rtmp(建议在~/Downloads下执行,便于统一操作)
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
unzip -o master.zip
如果你从未下载过nginx源码则执行下列操作,下载过的话则跳过
wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -zxvf nginx-1.12.2.tar.gz
nginx编译与安装
cd nginx-1.12.2
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=../nginx-rtmp-module-master
注: --add-module=你解压nginx-rtmp的路径
make
sudo make install
修改nginx.conf的配置
特别注意!rtmp块与http块同级,所以rtmp块需放在http{}外面
注意 rtmp的 hls_path 的设置,在http块中hls服务相关需要使用到
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
hls on; #开启hls
hls_path /data/rtmpTmp; #流文件的存放路径,.m3u8的存放路径
hls_fragment 5s; #每个TS文件包含5秒的视频内容
}
}
}
#简略设置
http {
server {
listen 80;
location /hls {
# Serve HLS fragments
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /data/rtmpTmp; # 即为rtmp块中的hls_path所设置的路径
expires -1;
}
}
}
启动或重启nginx
启动:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
重启:/usr/local/nginx/sbin/nginx -s reload
设置防火墙
firewall-cmd --zone=public --add-port=1935/tcp --permanent
firewall-cmd --zone=public --add-port=1935/udp --permanent
firewall-cmd --reloadl
注:使用腾讯云、阿里云等同学也需要到云控制台中的防火墙设置1935端口的权限
自此,RTMP服务搭建完毕
测试方法
推流:
下载直播推流软件OBS,安装并设置
设置路径, “设置” -> “推流”

开始推流直播

拉流:
下载vlc,并安装运行


最终效果

在centos上使用nginx-rtmp实现hls(Http live Streaming)直播的更多相关文章
- 在CentOS 上搭建nginx来部署静态页面网站
在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...
- 如何在 Ubuntu 和 CentOS 上启用 Nginx 的 HTTP/2 协议支持
HTTP/2 是 HTTP 网络协议的主要修订版本,其专注于 HTTP 协议的性能改进.HTTP/2 协议的目标是减少延迟,并且允许在 Web 浏览器和服务器之间的一个连接上并行发起多个请求,因此 W ...
- CentOs上搭建nginx
目录 CentOs上搭建nginx 1. 在root环境下安装nginx 1.1 常用工具安装 1.2 关闭iptables规则 1.3 关闭SELinux 1.4 安装C/C++环境和PCRE库 1 ...
- 在CentOS上把Nginx从1.2.4升级到1.6.0
在CentOS上升级把Nginx从1.2.4升级到1.6.0 摘要:本文记录了在CentOS 6.3上,把Nginx从1.2.4升级到1.6.0的过程. 1. 概述 在我做的一个项目中,最近我对生产服 ...
- Mac上搭建Nginx + rtmp
介绍 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 安装步骤 1.先安装brew: /usr/bin/ru ...
- 在CentOS上使用Nginx和Tomcat搭建高可用高并发网站
目录 目录 前言 创建CentOS虚拟机 安装Nginx 安装Tomcat 安装lvs和keepalived 反向代理 部署网站 搭建数据库 编写网站项目 解决session一致性 注意 参考资料 前 ...
- CentOS上搭建Nginx + Mono 运行 asp.net
安装步骤: 一.获取开源相关程序: 1.利用CentOS Linux系统自带的yum命令安装.升级所需的程序库: sudo -sLANG=Cyum -y install gcc gcc-c++ aut ...
- CentOS上搭建Nginx + Mono 运行 asp.net[转]
http://www.linuxdot.net/ http://www.cnblogs.com/wander1129/archive/2011/12/16/mono.html 安装步骤: 一.获取开源 ...
- 在 CentOS 上部署 Nginx 环境
这里的案例主要通过虚拟机( vmware workstation (14) )的方式安装 Center OS 到本地环境 资源下载: vmware workstation / CentOS 本次 ...
- Lvs 环境搭建 vbox搭建centos6.9 vbox设置 centos上安装nginx
1.现在vbox上虚拟出3个虚拟机,分别为负载均衡器(Load Balance).实际服务器1(Real server1).实际服务器2(Real Server2) 要点: :vbox系统网络连接方式 ...
随机推荐
- java第七周学习情况
这个星期 主要是在搞学校在暑期安排的实验报告b 怎么说来着 才知道这个消息几天 这是对学习不上心的体现啊 题目也有点多 慢慢做呗 而Java这边还是看些相关知识呗 说实话 已经学不太懂了 不过没关系 ...
- 3. Tooltip 工具提示
1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="U ...
- java中的批量导入,批量更新数据
批量插入 数据,提高效率 Dao层 int insertBatch(List<HealthImport> list); xml文件 <insert id="insertBa ...
- Hook新特性(一)
基础Hook 1.useState const [state, setState] = useState(initialState); //返回一个state变量,指为initialState,set ...
- Android EditText的onEditorAction监听事件防止执行两次
Android的EditText通过setOnEditorActionListener给文本编辑框设置监听事件,但是在其处理方法onEditorAction中的逻辑在每次回车后都触发了两次,这是因为在 ...
- ORACLE 创建只读用户
create user cxuser01 identified by test123 default tablespace USERS temporary tablespace TEMP; --创建 ...
- code的用法
今天写程序的时候用了const,想到之前遇到的code的用法,那是第一次遇到code的那样的用法,查了一下,解释如下: 在单片机使用C语言进行编程的时候,经常使用到code.code是keil C51 ...
- NTP时钟服务器(时间同步服务器)在大数据时代的重要性
NTP时钟服务器(时间同步服务器)在大数据时代的重要性 NTP时钟服务器(时间同步服务器)在大数据时代的重要性 技术交流:岳峰 15901092122 bjhrkc@126.com 大数据时代众 ...
- Cxf框架中@WebService注解的使用
最近工作中总是不可避免的使用WebService来对接功能,经过自己一番摸索,总结出了一些使用方法,做一下记录: 记录了两个SpringBoot版本使用WebService的一些问题和用法,Sprin ...
- 解决mikumikudance丢失dxdx_43.dll问题
首先是MMD软件下载 我的操作系统是win10-x64 设备是19版小新pro13 mmd官网地址https://learnmmd.com/downloads/ 或者戳这里 链接:https://pa ...