迅为RK3568开发板RTMP推流之视频监控

news2024/11/19 16:35:07

1 搭建 RTMP 媒流体服务器

nginx-rtmp 是一个基于 nginx RTMP 服务模块,是一个功能强大的流媒体服务器模块, 它提供了丰富的功能和灵活的配置选项,适用于构建各种规模的流媒体平台和应用。无论是搭建实时视频直播平台、点播系统或多屏互动应用,Nginx-RTMP 都是一个值得考虑的选择。这里我们使用 Nginx 来搭建流媒体服务器。

1.1 Debian/ubuntu 系统

1.安装 nginx+rtmp 运行所要用到的库和依赖环境 apt-get update

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

2. 下 载 nginx-1.20.2 源 码和 nginx-rtmp-module(,网盘“iTOP-3568开发板\02_iTOP-RK3568开发板】开发资料【V1.7版本】\10_Linux系统开发配套资料\06_RTMP开发配套资料”目录下提供了下载好的。

3.nginx-1.20.2.tar.gz nginx-rtmp-module-master.zip 拷贝到开发板,使用以下命令解压,

tar -vxf nginx-1.20.2.tar.gz unzip nginx-rtmp-module-master.zip

  1. 进入 nginx 源码文件夹,使用以下命令进行手动编译安装。

5.新建文件夹,用于保存 nginx 所形成的 web 服务的文件,

6.配置 nginx 服务,主要是设置 web 服务的主目录和推流到的端口、临时文件夹。首先设 定 web 服务的根目录和网页端口,修改usr/local/nginx-1.20.2/conf/nginx.conf 文件,

vim /usr/local/nginx-1.20.2/conf/nginx.conf

7.然后添加以下内容设置 rtmp 服务器的监听端口,推流数据的存储位置等,

8.启动 nginx,使用以下命令启动,

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

ps -aux | grep nginx

2 使用 FFMpeg 进行推流

Debian/Ubuntu 系统使用以下命令安装 FFMpeg

apt-get install ffmpeg

使用 ifconfig 查看开发板 ip 192.1368.1.9  

使用 FFMpeg 推流一个 mp4 视频进行测试,作者将测试视频 test.mp4 放在了根目录下, 可根据实际目录修改以下命令,

ffmpeg -re -stream_loop -1 -i /test.mp4 -f flv "rtmp://192.168.1.9:1096/live/test"

使用 FFMpeg 采集摄像头(测试 USB 摄像头可以)视频数据将其发送给 nginx 流媒体服务器,执行以下命令:

ffmpeg -f v4l2 -video_size 640x480 -framerate 30 -i /dev/video9 -q 10 -f flv

rtmp://192.168.1.9:1096/live/test

3 使用 VLCplayer 进行拉流

我们将 Windows 主机作为拉流端,使用 VLC 软件进行拉流,VLC 软件可以在网盘资料 “iTOP-3568 开发板\02_iTOP-RK3568 开发板】开发资料【V1.7 版本】\10_Linux 系统开发 配套资料\06_RTMP 开发配套资料”目录下找到,大家可以自行安装好。安装好之后打开 VLC,点击左上角媒体->打开网络串流,弹出如下界面输入以下内容,点击“播放”既可从 RTMP 流媒体服务器拉取视频数据进行播放

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

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

相关文章

【Qt】常见控件

文章目录 按钮组QListWidget列表容器TreeWidget树控件TableWidget 表格控件其它控件介绍下拉框QLabel显示图片和动图 自定义控件封装 按钮组 QPushButton 常用按钮 QToolButton 工具按钮: 用于显示图片 如果想显示文字:修改风格:toolButto…

分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测

分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测 目录 分类预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入分类预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于BiGRU-AdaBoos…

Hadoop3教程(二十五):Yarn的多队列调度器使用案例

文章目录 (136)生产环境多队列创建&好处(137)容量调度器多队列提交案例如何创建多个队列如何向指定队列提交任务 (138)容量调度器任务优先级(139)公平调度器案例参考文献 &#…

【Java 进阶篇】JavaScript 表格全选案例详解

在网页开发中,表格(Table)是一种常用的HTML元素,用于以表格形式展示数据。对于包含大量数据的表格,提供一个全选复选框可以极大地提高用户体验,方便用户一次性选择或取消选择所有项目。本篇博客将详细介绍如…

Mac电脑版交互式原型设计软件 Axure RP 8汉化 for mac

Axure RP 8是一款专业快速原型设计软件,它主要用于定义需求、设计功能和界面等,适用于商业分析师、信息架构师、产品经理、IT咨询师、用户体验设计师、交互设计师和UI设计师等用户。 该软件可以快速、高效地创建原型,并支持多人协作设计和版…

彩虹云商城自助发卡商城-卡卡云主题

彩虹云商城自助发卡商城-卡卡云主题 全新SUP模板/知识付费模板/卡卡云模板,首页美化,登陆页美化修复了pc端显示不正常的问题。 将这俩个数据库文件导入数据库。 其他的直接导入网站根目录覆盖就好。 PS:若首页显示不正常:请去…

MYSQL学习笔记2-mysql数据文件

1.mysql数据文件类型?5.7和8的一些区别 创建一个anadb的数据库:在mysql安装目录下data目录下会产生一个同名的文件夹 建表:图为mysql57的数据文件图,不同的引擎建表会产生不同后缀名的文件 ,mysql5.5以上默认使用 inno…

新手指南|如何快速参与Moonbeam Ignite

Moonbeam Ignite是社区熟悉的有奖链上交互活动,将有300万枚GLMR作为生态激励注入Moonbeam生态系统,体验MoonbeamMoonbeam生态的应用即可获取相应Token奖励。Beamex/Beamswap、Moonwell和Gamma作为首批参与Moonbeam Ignite的三家项目方,将在活…

机器学习(23)---Boosting tree(课堂笔记)

文章目录 一、知识记录二、题目2.1 题目12.2 题目22.3 答案书写 一、知识记录 二、题目 2.1 题目1 2.2 题目2 2.3 答案书写

一百九十一、Flume——Flume配置文件各参数含义(持续完善中)

一、目的 在实际项目的开发过程中,不同Kafka主题的数据规模、数据频率,需要配置不同的Flume参数,而这一切的调试、配置工作,都要建立在对Flume配置文件各参数含义的基础上 二、Flume各参数及其含义 (一)…

touch - 创建空文件与修改时间戳

touch命令的功能是用于创建空文件与修改时间戳。如果文件不存在,则会创建出一个空内容的文本文件;如果文件已经存在,则会对文件的Atime(访问时间)和Ctime(修改时间)进行修改操作,管理…

数字秒表设计仿真VHDL跑表,源码,视频

名称:简单秒表设计仿真VHDL跑表 软件:Quartus 语言:VHDL 代码功能: 数字秒表功能描述 本次练习只需要一个数码管(假设该数码管已被选中),实现数码管显示功能,具体要求如下(设数码管为共阳) 1)实现秒表计时功能。…

阿里云安装 redis

1、在opt目录下面安装redis https://download.redis.io/redis-stable.tar.gz redis的最新稳定版本。更多版本可见 redis cd /opt wget https://download.redis.io/redis-stable.tar.gz2、解压tar包,会生成redis-stable文件夹 tar -xzvf redis-stable.tar.gz3、安装…

NLP Bi-Encoder和Re-ranker

Retrieve & Re-Rank https://www.sbert.net/examples/applications/retrieve_rerank/README.html Bi-Encoder vs. Cross-Encoder https://www.sbert.net/examples/applications/cross-encoder/README.html Bi-Encoder会用BERT对输入文本编码,再根据cosine相似度…

JAVAEE初阶相关内容第十五弹--网络編程

写在前 简单描述一下关于路由器的三层转发和交换机的二层转发。 路由器是三层转发-->在网络层转发。【需要解析出IP协议中的源IP、目的IP来规划路径】 交换机是二层转发-->在数据链路层转发。【只需要关注下一步发展到哪个相邻的设备上,不需要IP地址&#…

人工智能发展与结构科学

人工智能(AI)在各种应用中的影响力不断增强,从简单的计算任务到复杂的决策支持。但在这背后,AI的发展其实是一个关于结构演变的故事。从最早的线性结构,到今天的复杂网络结构,结构的演变对AI的能力和效率产…

【离线/并查集】CF1213 G

想起来好久没写题解了,随便写一下把 感觉写多了div3后面的题就变得简单了,div3似乎没什么思维含量,甚至有时候能开出div3的2100.... 心血来潮写一下这个*1800的题解,思路一下就出了,但是一开始多了个log被卡了&#x…

C#通过Entity Framework实体对数据表增删改查

目录 一、创建实体数据模型 1.建立数据库连接 2.建立EF实体模型 二.设计窗体和EF应用 1.窗体设计 2.应用程序设计 3.源码 4.生成效果 (1)查询 (2)修改 (3)删除 (4)增加 …

Python 文件打包成可执行文件

打包 要将Python脚本打包成可执行文件,常见的做法是使用PyInstaller或cx_Freeze工具。下面是使用PyInstaller的基本步骤: 使用conda安装pyinstaller (建议) conda install -c conda-forge pyinstaller上面的命令从conda-forge通…

基于nodejs+vue 衣服穿搭推荐系统

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…