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

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

  1. 下 载 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 流媒体服务器拉取视频数据进行播放。

相关推荐
bai5459361 小时前
STM32 软件I2C读写MPU6050
stm32·单片机·嵌入式硬件
逼子格3 小时前
AT89C52单片机介绍
单片机·嵌入式硬件·51单片机·硬件工程师·硬件工程师真题·at89c52·器件手册
生涯にわたる学び5 小时前
ARM 实操 流水灯 按键控制 day53
arm开发·嵌入式硬件
whaosoft-1435 小时前
w嵌入式分享合集68
嵌入式硬件
竹照煜_ysn8 小时前
STM32——软硬件I2C
stm32·嵌入式硬件·mongodb
Ronin-Lotus9 小时前
嵌入式硬件篇---电感串并联
嵌入式硬件
Wallace Zhang9 小时前
STM32 - Embedded IDE - GCC - 显著减少固件的体积
stm32·单片机·嵌入式硬件
fengfuyao98520 小时前
STM32如何定位HardFault错误,一种实用方法
stm32·单片机·嵌入式硬件
爱学习的颖颖20 小时前
EXTI外部中断的执行逻辑|以对射式红外传感器计次为例
单片机·嵌入式硬件·exti中断
keer_zu21 小时前
STM32L051 RTC闹钟配置详解
stm32·嵌入式硬件