上次介绍的是使用ffmpeg推流,这次介绍的是使用nginx + rtmp搭建直播服务器。

环境:ubuntu 16.04

一、 安装nginx 和 rtmp模块

1. 下载安装 nginx 和 nginx-rtmp 编译依赖工具

sudo apt-get install -y curl build-essential libpcre3 libpcre3-dev libpcre++-dev zlib1g-dev libcurl4-openssl-dev libssl-dev

2. 创建编译所用目录

mkdir -p ~nginx_src

cd ~nginx_src

3. 下载nginx源码包并解压

wget http://nginx.org/download/nginx-1.11.8.tar.gz

tar -zxvf nginx-1.11.8.tar.gz

4. 下载 nginx-rtmp-module模块 源码包(RTMP模块源码包)并解压

wget https://github.com/arut/nginx-rtmp-module/archive/master.zip

unzip master.zip

5. 进入nginx目录设定编译参数

cd  cd nginx-1.11.8

./configure--prefix=/usr/local/dev_workspace/nginx --add-module=../nginx-rtmp-module-master --with-http_ssl_module

6. 编译安装

make

sudo make install

注意:如果没有安装第一步的依赖工具,可能出现以下错误:

./configure: error: the HTTP rewrite module requires the PCRE library.………………………………

7. 完成验证

操作如图:

二、 修改nginx配置文件添加rtmp服务

1. 配置文件目录

/usr/local/dev_workspace/nginx/nginx.conf

2. 添加以下内容

rtmp {

server {

listen 1935; #监听的端口

chunk_size 4000;

application hls {

live on;

}

}

}

注意:①直接配置文件增加   与http协议同级

②修改前先将原文件.bak备份

至此,nginx 及nginx-rtmp-module部分配置完成 。

三、安装Strobe Media Playback

1. 下载网址 https://sourceforge.net/projects/smp.adobe/

在/usr/local/dev_workspace/nginx/html下新建rtmp文件夹

解压好后将for Flash Player 10.1复制到rtmp文件夹下并重命名为strobe

cp -r for Flash Player 10.1/  /usr/local/dev_workspace/nginx/html/rtmp/strobe

2.在/usr/local/dev_workspace/nginx/html/rtmp下新建一个video.html

程序如下:

<!DOCTYPE html>
<html>
<head>
<title>Live Streaming</title>   <!-- strobe -->
<script type="text/javascript" src="strobe/lib/swfobject.js"></script>
<script type="text/javascript">   var parameters = {      //src: "rtmp://{pi_address}/rtmp/live", src: "rtmp://192.168.15.129:1935/hls/video",    autoPlay: false,    controlBarAutoHide: false,      playButtonOverlay: true,    showVideoInfoOverlayOnStartUp: true,    optimizeBuffering : false,      initialBufferTime : 0.1,    expandedBufferTime : 0.1,   minContinuousPlayback : 0.1,    poster: "images/poster.png"     };      swfobject.embedSWF( "strobe/StrobeMediaPlayback.swf"    , "StrobeMediaPlayback" , 1024  , 768   , "10.1.0"  , "strobe/expressInstall.swf"   , parameters    , { allowFullScreen: "true" }   , { name: "StrobeMediaPlayback" }   );
</script> </head>
<body>
<div id="StrobeMediaPlayback"></div>
</body>
</html>

注意:①"rtmp://192.168.15.129:1935/hls/video"该地址是ffmpeg推流

到的虚拟目录,

②, 1024, 768 这两个参数是视频流的长和宽,根据Qt设置的

WebView进行调整。否则只调整WebView是没有用的。

至此,nginx+rtmp以及Strobe Media Playback安装并且配置完成了。

下次将根据项目需要,给ffmpeg安装一些其他库,并且使用qt的webview通过Url显示视频流.

最后附上经典参考文献连接:

https://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmp-server-using-nginx.50/

欢迎大家关注公众号:

Qt显示视频流——nginx+rtmp搭建直播服务器(二)相关推荐

  1. 树莓派nginx+rtmp搭建直播服务器

    樹莓派架設 RTMP 串流(Streaming)伺服器,傳送即時攝影機影像 2015/03/0649Comments 這裡介紹使用樹莓派安裝 nginx 架設 RTMP 串流伺服器,傳送即時的攝影機影 ...

  2. 使用nginx的第三方模块rtmp搭建直播服务器

    一.前言 本文主要介绍如何基于nginx的第三方模块rtmp搭建一个流媒体服务器,实现直播的简单推拉流. 二.环境准备 1.系统版本 Ubuntu 18.04.1 2.Nginx版本 nginx/1. ...

  3. linux搭建直播步骤,Linux 下 nginx + rtmp 搭建直播服务

    简单粗暴直接上步骤吧: 注 : 以下示例使用的是nginx(版本1.15.3) rtmp(版本1.2.1) 下载nginx和rtmp模块 下载nginx 解压 ​ tar xvf nginx-1.15 ...

  4. Windows下用FFmpeg+nginx+rtmp搭建直播环境 实现推流、拉流(超简单教程)

    https://blog.csdn.net/qq_32381727/article/details/81078213

  5. 树莓派使用nginx+rtmp搭建音频直播流媒体服务器

    前言 想使用树莓派连接usb音频采集卡实时采集收音机接收到的音频,树莓派上运行着由nginx+RTMP 搭建的直播流媒体服务器,这样就可以在客户端上通过支持rtmp串流协议的播放器就可以正常接收到音频 ...

  6. 服务器搭建和使用 ubuntu_Ubuntu中使用Nginx+rtmp搭建流媒体直播服务

    一.背景 本篇文章是继上一篇文章<Ubuntu中使用Nginx+rtmp模块搭建流媒体视频点播服务>文章而写,在上一篇文章中我们搭建了一个点播服务器,在此基础上我们再搭建一个直播服务器, ...

  7. linux nginx rtmp 死机,nginx rtmp 实时直播视频流 发布者网络不稳定导致无法直播问题...

    nginx rtmp 实时直播视频流 发布者网络不稳定导致无法直播问题 直播项目使用nginx搭配rtmp扩展实现实时音视频流,最近一次直播讲师在外出差,使用酒店WiFi网络,苹果笔记本,Safari ...

  8. 使用Nginx搭建直播服务器(nginx-rtmp-module)

    使用Nginx搭建直播服务器 1 简介 2 RTMP Module 3 gcc 4 OpenSSL 5 g++ 6 pcre 7 zlib 8 安装nginx 9 配置文件 10 systemctl ...

  9. uniapp+nginx+rtmp开发直播app(1)

    uniapp+nginx+rtmp开发直播app(1) 文章目录 uniapp+nginx+rtmp开发直播app(1) 前言 一.准备工作 1. 服务器环境搭建: Ubuntu + nginx + ...

最新文章

  1. 程序员修炼之道:从小工到专家读后感02
  2. java设计模式之UML②类图讲解
  3. 云图说 | 华为云应用服务网格,让你的应用治理智能化、可视化
  4. linux 安装flash tar.gz,ubuntu下安装flash(tar.gz格式)
  5. SQL Server 服务器硬件配置
  6. 一杯“咸水”的人生哲理
  7. linux shell locate,shell学习之locate和find命令
  8. Wcf使用Net.Tcp做回调操作
  9. 多项式函数插值:计算基本理论
  10. UpdateData()函数使用
  11. 月薪30K+的电子工程师应具备什么?
  12. 千月影视全新改版影视app系统-支持投屏-二开美化版
  13. 设置两个路由器无线桥接
  14. 强化学习(RL)算法
  15. 疫情之下,征信有逾期如何处理?
  16. 对矩阵乘法本质的理解——从向量线性组合角度
  17. JavaScript基础之一JavaScript的邂逅
  18. 快速理解数据库函数依赖(平凡函数依赖、非平凡函数依赖、完全函数依赖、部分函数依赖、传递依赖)
  19. Java操作word文档将docx转换为pdf格式
  20. Centos-7.5Linux系统启动原理及故障排除

热门文章

  1. 隐藏受保护的操作系统文件 变为单选框的恢复
  2. 【**背包dp**】
  3. 非静压模型SWASH学习(6)——二维波浪变形模拟算例(Wave transformation over an elliptic shoal on a sloped bottom)
  4. UG10.0空间舱体四轴编程与建模视频教程
  5. 转载:Java 关于中文乱码问题的解决方案与经验
  6. 数据分析求职之费米估算解析
  7. php5.3.3下载 64_PHP for Windows5.3.5 下载 - 51下载网
  8. 计算机操作系统(第3版)(微课版)课后习题答案全
  9. JavaScript-81.8-操作元素属性-JS在VS Code中添加图片
  10. 百度Java面试题前200页。