linux系统中Nginx+FFmPeg实现网页监控视频播放配置过程

1.安装好的nginx上添加模块nginx-http-fiv-module-master

此模块是rtmp模块的升级版,有它所有的功能,因此安装它

(1)从GitHub上下载该模块,将压缩包放到nginx目录的/usr/local/nginx下

cp:nginx-http-fiv-module-master .zip /usr/local/nginx

(2)解压到此

unzip nginx-http-fiv-module-master .zip

(3)在安装文件夹下添加模块

./configure --add-module=/usr/local/nginx/nginx-http-flv-module-master

记得使用管理员身份进入!!

make

紧接着执行make install!

make install

2.linux服务器安装ffmpeg

使用命令直接安装

apt-get install ffmpeg

3.进入nginx配置文件添加rtmp

rtmp {
out_queue 4096;
out_cork 8;
max_streams 128;
timeout 15s;
drop_idle_publisher 15s; log_interval 5s; #log模块在access.log中记录日志的间隔时间,对调试非常有用
log_size 1m; #log模块用来记录日志的缓冲区大小 server {
listen 1935;
server_name localhost; application myapp {
live on;
gop_cache on; #打开GOP缓存,减少首屏等待时间
} application hls {
live on;
hls on;
hls_fragment 8s;
hls_path temp/hls;
} } }

编辑保存好文件之后,再重启nginx

sudo nginx -s reload

3.使用FFmpeg对视频进行推流

推流至nginx的服务器地址

ffmpeg -re -i {input-source} -f flv -r 25 -s 1280*720 -an rtmp://localhost:1935/live/test

拉流地址:rtmp://localhost:1935/rtmplive/test

配置环境变量的方法

1、打开配置文件

1.vi /etc/profile

2、在PATH后面追加sbin目录,以:隔开

/usr/local/nginx/sbin

export JAVA_HOME=/usr/local/java/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin:/usr/local/nginx-1.20.2/sbin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JRE_HOME=$JAVA_HOME/jre

3.重新加载

启动nginx

nginx

停止

n ginx -s stop

nginx -s quit

重载配置文件

nginx -s reload

更改默认端口的方法

1.进入nginx.conf文件

2.修改下图位置的端口号

3.找到/etc/nginx/sites-available/default文件

# sudo vim /etc/nginx/sites-available/default

修改此文件下的端口号为刚刚nginx.conf中的相同端口

  server {
listen 8084 default_server;
listen [::]:8084 default_server; root /usr/share/nginx/html; xxx.html xxx.htm }

4.重新加载配置文件

killall -9 nginx

nginx

指定配置文件启动的方法

可能由于下载安装的地址问题使得运行的时候并没有运行/usr/local/nginx/conf下的配置文件,此时只需手动nginx指定配置文件启动即可

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

linux系统中Nginx+FFmPeg+vlc实现网页视频播放配置过程的更多相关文章

  1. LINUX系统中动态链接库的创建与使用

    大家都知道,在WINDOWS系统中有很多的动态链接库(以.DLL为后缀的文件,DLL即Dynamic Link Library).这种动态链接库,和静态函数库不同,它里面的函数并不是执行程序本身的一部 ...

  2. LINUX系统中动态链接库的创建与使用{补充}

    大家都知道,在WINDOWS系统中有很多的动态链接库(以.DLL为后缀的文件,DLL即Dynamic Link Library).这种动态链接库,和静态函数库不同,它里面的函数并不是执行程序本身的一部 ...

  3. Windows7系统中nginx与IIS服务器搭建集群实现负载均衡

    10分钟搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡   分布式,集群,云计算机.大数据.负载均衡.高并发······当耳边响起这些词时,做为一个菜鸟程序猿无疑 ...

  4. linux系统下nginx安装目录和nginx.conf配置文件目录

    linux系统下nginx安装目录和nginx.conf配置文件目录 1.查看nginx安装目录 输入命令 # ps  -ef | grep nginx 返回结果包含安装目录 root      26 ...

  5. 详解Linux系统中的文件名和文件种类以及文件权限

    Linux文件种类与副文件名 一直强调一个概念,那就是:任何装置在Linux底下都是文件, 不仅如此,连资料沟通的介面也有专属的文件在负责-所以,你会瞭解到,Linux的文件种类真的很多- 除了前面提 ...

  6. 2017-03-04 dotnet core网站发布到Linux系统中

    今天开始学习dotnet core的开发,距离Visual Stuio 2017正式版的发布,也就是VS20周岁的生日还有三天,在我的电脑上安装的是VS2017 Enterprise RC版, 在VS ...

  7. linux系统中的一些典型问题汇总

    一.文件系统破坏导致系统无法启动:Checking root filesystem/dev/sda6 contains a file system with errors,check forcedAn ...

  8. 在linux系统中配置NVMe over FC

    在linux系统中配置NVMe over FC与配置NVMe over TCP类似,前5步操作请参考<在linux系统中配置NVMe over TCP>,网页连接如下: https://w ...

  9. Linux系统中的Device Mapper学习

    在linux系统中你使用一些命令时(例如nmon.iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. ...

随机推荐

  1. java.sql和javax.sql的区别

    根据 JDBC 规范,javax.sql 包中的类和接口首先作为 JDBC 2.0 可选包提供.此可选程序包以前与 J2SE1.2 中的 java.sql 程序包是分开的.从 J2SE1.4 开始,这 ...

  2. linux篇-linux mysql数据库定时备份

    1在linux上面创建一个文件夹,并且进行备份 cd /home mkdir backup cd backup 2创建一个脚本 Vi imaginebase.sh #!/bin/bash mysqld ...

  3. 140_Power BI&Power Pivot之降维展示同类型比较

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 最近一段时间比较忙,几乎没有时间更新网站内容,今天刚好周末,更新一个简单的需求. 上效果图: 在我们日常做对比分 ...

  4. 我被冻在了 vue2 源码工具函数第一行Object.freeze()(一)

    前言 最近参加若川的源码共度活动,第 24 期 vue2 源码工具函数,最开始: var emptyObject = Object.freeze({}); 之前知道 Object.freeze() 是 ...

  5. RabitMQ 发布确认

    每日一句 军人天生就舍弃了战斗的意义! 概述 RabitMQ 发布确认,保证消息在磁盘上. 前提条件 1.队列必须持久化 队列持久化 2.队列中的消息必须持久化 消息持久化 使用 三种发布确认的方式: ...

  6. Spring-boot整合Activiti7

    Spring-boot整合Activiti7 pom.xml    <properties>        <maven.compiler.source>15</mave ...

  7. 从零搭建react+ts组件库(封装antd)

    为什么会有这样一篇文章?因为网上的教程/示例只说了怎么做,没有系统详细的介绍引入这些依赖.为什么要这样配置,甚至有些文章还是错的!迫于技术洁癖,我希望更多的开发小伙伴能够真正的理解一个项目搭建各个方面 ...

  8. 基于.NetCore开发博客项目 StarBlog - (9) 图片批量导入

    系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...

  9. django框架9

    内容概要 用户名动态校验 删除二次确认 sweetalert前端插件 django自带的序列化组件 批量数据操作 分页器推导流程 自定义分页器封装代码 自定义分页器使用方法 校验性组件之forms组件 ...

  10. 【C++函数题目】重载完成Compare函数

    题目来源链接:https://www.dotcpp.com/oj/problem2008.html 题目讲解链接:http://6o2.cn/1yjJB2  题目描述 利用函数重载完成三个比较大小的C ...