Ubuntu安装nginx-http-flv,并获取统计信息

1、依赖安装

sudo apt-get install build-essential
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install libssl-dev
sudo apt-get install zlib1g
sudo apt-get install zlib1g-dev

2、源码下载

        NGINX 的版本应该大于或者等于 1.2.6,与其他版本的兼容性未知。nginx下载地址:http://nginx.org/download/。nginx-http-flv使用最新版本就可以,这里使用的nginx版本是1.14.2。

mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.14.2.tar.gz
tar -zxvf  nginx-1.14.2.tar.gz
git clone https://github.com/winshining/nginx-http-flv-module.git

3、编译安装

cd nginx-1.14.2
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=../nginx-http-flv-module
make -j
make install

4、修改配置文件

        修改/usr/local/nginx/conf/nginx.conf添加rtmp服务:

rtmp {server {listen 1935;chunk_size 4000;application rtmp-live {live on;}  }}

        修改http服务:

http {...server {listen       80;...#开启flvlocation /live {flv_live on;chunked_transfer_encoding on;}#获取统计信息location /stat {rtmp_stat all;# Use this stylesheet to view XML as web page# in browserrtmp_stat_format json;}#controllocation /control {rtmp_control all;}...}
}

5、启动

        执行

/usr/local/nginx/sbin/nginx

6、测试

ffmpeg -re -i test.mp4 -vcodec copy -acodec copy -f flv rtmp://127.0.0.1:1935/rtmp-live/test

        rtmp仅支持H264/AAC,如果媒体不是H264/AAC,请使用下面的命令

ffmpeg -i test.mp4 -vcodec libx264 -acodec fdk-aac -f flv rtmp://127.0.0.1:1935/rtmp-live/test

        使用VLC播放视频:

        rtmp播放地址:rtmp://127.0.0.1:1935/rtmp-live/test

        http-flv播放地址:http://127.0.0.1:80/live?app=rtmp-live&stream=test 

7、获取rtmp服务器统计信息

curl 127.0.0.1:80/stat

        返回json格式的数据,记录了rtmp server的连接情况:

{"http-flv": {"nginx_version": "1.14.2","nginx_http_flv_version": "1.2.11","compiler": "gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) ","built": "Mar 26 2024 13:37:56","pid": 10099,"uptime": 2748,"naccepted": 13,"bw_in": 2160784,"bytes_in": 92153201,"bw_out": 0,"bytes_out": 20844554,"servers": [{"port": 1935,"server_index": 0,"applications": [{"name": "rtmp-live","live": {"streams": [{"name": "test","time": 52043,"bw_in": 2142224,"bytes_in": 12709114,"bw_out": 0,"bytes_out": 0,"bw_audio": 0,"bw_video": 2142224,"clients": [{"id": 35,"address": "127.0.0.1","time": 52267,"flashver": "FMLE/3.0 (compatible; Lavf58.20.100)","dropped": 0,"avsync": -52051,"timestamp": 52051,"publishing": true,"active": true}],"records": [],"meta": {"video": {"width": 1920,"height": 1080,"frame_rate": 24.828,"codec": "H264","profile": "High","level": 4.2},"audio": {}},"nclients": 1,"publishing": true,"active": true}],"nclients": 1},"recorders": {"count": 0,"lists": []}}]}]}
}

        applications里面记录了流的连接情况。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/773329.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实战LangChain(三):深化交互——利用Neo4j提升聊天机器人的对话能力

实战LangChain(三):深化交互——利用Neo4j提升聊天机器人的对话能力 实战LangChain(一):构建您的第一个聊天机器人_langchai 机器人 实战LangChain(二):探索RAG——为聊天机器人注入知识-CSDN博客 实战LangChain(三):深化交互——利用Neo4j提升聊天机器人的对话…

2024年150道高频Java面试题(三)

5. String str“i” 与 String strnew String(“i”) 一样吗? String str "i" 和 String str new String("i") 在Java中并不完全相同,尽管它们都用于创建包含单个字符 ‘i’ 的字符串对象。 首先,String str "…

第三十三章 配置服务器访问 - SSL TLS 参数

文章目录 第三十三章 配置服务器访问 - SSL TLS 参数SSL TLS 参数可选参数错误页面复制服务器配置禁用对已配置服务器的访问删除服务器配置 第三十三章 配置服务器访问 - SSL TLS 参数 SSL TLS 参数 以下参数仅与使用 SSL/TLS 来保护 Web Gateway 和IRIS 之间的连接的安装相关…

DevSecOps平台架构系列-亚马逊云AWS DevSecOps平台架构

目录 一、概述 二、AWS DevSecOps实施原则 2.1 尽早采用安全测试,加速问题反馈 2.2 优先考虑预防性安全控制 2.3 部署检测性安全控制时,确保有与之互补的响应性安全控制 2.4 安全自动化 2.5 总结 三、AWS DevSecOps关键组件 3.1 关键组件 3.2 关…

新能源汽车充电桩主板各模块成本占比解析

汽车充电桩主板是汽车充电桩的重要组件,主要由微处理器模块、通信模块、控制模块、安全保护模块、传感器模块等多个模块构成。深入探究各模块在总成本中的比重,我们可以更好地优化成本结构、提高生产效率,并为未来的技术创新和市场需求变化做…

TypeScript【入门】

TypeSript ts是js的一个超集,解决js类型支持 js: 动态类型 ts:静态类型 代码执行的顺序是先编译在执行 发现错误更早 为什么要添加类型支持? 优势有什么? 全局安装 npm i -g typescript tsc -v 简化运行ts的步骤 typescript常用类型 类型…

音频干扰检测(频域方法)

测试音响系统的通路上是否有外部干扰时,可以通过播放1000赫兹的正弦波信号,在输出端采集数字信号(I2S,TDD,A2B)并保存为.wav文件。 然后通过以下Python代码检测。 import numpy as np import librosa im…

C++类和对象、面向对象编程 (OOP)

文章目录 一、封装1.抽象、封装2.类和对象(0)学习视频(1)类的构成(2)三种访问权限(3)struct和class的区别(4)私有的成员变量、共有的成员函数(5)类内可以直接访问私有成员,不需要经过对象 二、继承三、多态1.概念2.多态的满足条件3.多态的使用条件4.多态原理剖析5.纯…

MySQL详细教程

文章目录 前言一、数据库管理1.查看已有的数据库2.创建数据库3.删除数据库4.进入数据库 二、 数据表管理1.查看当前数据库下的所有数据表2.创建数据表3.删除表4.查看表结构 三、常用数据类型1.整型tinyintintbigint 2.浮点型floatdoubledecimal 3.字符型char(m)varchar(m)textm…

MacBook终端安装brew命令

关于MacBook终端安装brew命令,官方的操作流程会报错 Failed during: /usr/bin/git fetch --force origin 有没有跟我一样的小伙伴遇到了一样的难题 终于 经过我来回来去的搜索找到了可以利用国内镜像源进行安装brew 简直非常Nice!!&#x…

linux在使用重定向写入文件时(使用标准C库函数时)使处理信号异常(延时)--问题分析

linux在使用重定向写入文件时(使用标准C库函数时)使处理信号异常(延时)–问题分析 在使用alarm函数进行序号处理测试的时候发现如果把输出重定向到文件里面会导致信号的处理出现严重的延迟(ubuntu18) #include <stdio.h> #include <stdlib.h> #include <unist…

7.3*3卷积核生成

1.卷积核 在数字图像处理中的各种边沿检测、滤波、腐蚀膨胀等操作都离不开卷积核的生成。下面介绍如何生成各种3X3的卷积核。为后面的数字图像操作打下基础。   由于图像经过卷积操作后会减少两行两列&#xff0c;因此在生成卷积核的时候一般会对图像进行填充&#xff0c;填充…

javax mail邮件发送(sockts代理)

1.pom引入 <!--hutool工具类--><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.21</version></dependency> <!-- 邮件--><dependency><groupId>javax.m…

【CXL协议-ARB/MUX层(5)】

5.0 Compute Express Link ARB/MUX 前言&#xff1a; 在CXL协议中&#xff0c;ARB/MUX层&#xff08;Arbitration/Multiplexer layer&#xff09;是负责管理资源共享和数据通路选择的一层。CXL协议包含了几个子协议&#xff0c;主要有CXL.io、CXL.cache 和 CXL.memory。ARB/MU…

LeetCode 面试经典150题 383.赎金信

题目&#xff1a; 给你两个字符串&#xff1a;ransomNote 和 magazine &#xff0c;判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以&#xff0c;返回 true &#xff1b;否则返回 false 。 magazine 中的每个字符只能在 ransomNote 中使用一次。 思路&#x…

生态修复相关的书籍推荐

近期&#xff0c;为了解生态修复找了很多的书籍阅读&#xff0c;其中有基本书都下来感觉还不错。以此&#xff0c;做个记录。 《生态修复理论与实践》 李锋 这本书写得有点空&#xff0c;更多的是从规划的视角来写。因而&#xff0c;这本书看起来就像是看规划的文本一样。因而…

计算机网络——网络基础1

网络基础一 1.初识网络 ​ 网卡也是一种文件&#xff0c;所以对于网络的编程也是一种文件操作&#xff1b; ​ 早期由于不同的计算机之间要根据数据进行协作&#xff0c;但是计算机之间是独立的&#xff0c;所以使用了光驱或者软盘之类的进行协作&#xff1b;对于将计算机连…

速盾:本地高防 和 cdn

本地高防和CDN是两种网络安全解决方案&#xff0c;主要用于保护网站免受DDoS攻击和提高网站的性能和可用性。本文将介绍本地高防和CDN的定义、原理、优缺点以及如何选择适合自己的解决方案。 本地高防是指在本地网络环境中部署的一种防御DDoS攻击的解决方案。它通过在网络入口…

计算机网络——数据链路层(差错控制)

计算机网络——数据链路层&#xff08;差错控制&#xff09; 差错从何而来数据链路层的差错控制检错编码奇偶校验码循环冗余校验&#xff08;CRC&#xff09;FCS 纠错编码海明码海明距离纠错流程确定校验码的位数r确定校验码和数据位置 求出校验码的值检错并纠错 我们今年天来继…

【Linux】-Linux下的编辑器Vim的模式命令大全及其自主配置方法

目录 1.简单了解vim 2.vim的模式 2.1命令模式 2.2插入模式 2.3底行模式 3.vim各模式下的命令集 3.1正常&#xff08;命令模式下&#xff09; 3.1.1光标定位命令 3.1.2 复制粘贴 3.1.3 删除 3.1.4 撤销 3.1.5大小写转换 3.1.6替换 「R」&#xff1a;替换光标所到之处的字符&…