Jetson NX Xavier 桌面推流至rtsp


前言

每次项目组给你提出一个需求,要你实现xx功能时,若没做过,定会是抓耳挠腮。这桌面推流就是其中一个,我曾经踩过坑,也泪过,记此文章,望后来人能少走些弯路。

这桌面推流主要分为两大块:搭建推流服务器、Jetson硬编码推流

搭建EasyDarwin推流服务器

01|下载和安装EasyDarwin

搭建EasyDarwin,根据我目前做过的,有两种方式:编译源代码和用已编译的文件
我曾经试过编译EasyDarwin,不料我备受打击,迟迟不能成功。于是,博主选择了用已编译的文件(哈哈,真香)。

点开下载链接:Ubuntu1604交叉编译全志T7开发板ARM版Easydarwin,在文章的最后有这位博主已编译好的EasyDarwin(arm version)。百度网盘链接, 提取码: q6x9

把文件复制到Jetson任一目录下,用 tar -zxvf EasyDarwin-aarch64-8.1.0-20043010.tar.gz 解压到当前文件夹。

注意:解压后的程序是不能直接使用的,需要 sudo chmod 777 文件名 修改权限

1.1 启动程序

chmod 777 start.sh
sudo ./start.sh

1.2 验证是否已启动

打开chrome,输入前端页面地址:127.0.0.1:3000

默认端口是10008,博主修改了easydarwin.ini中的端口

在这里插入图片描述

扫描二维码关注公众号,回复: 16001028 查看本文章

02 | gstreamer 硬解码推流

2.1 安装 GStreamer-1.0

sudo add-apt-repository universe
sudo add-apt-repository multiverse
sudo apt-get update
sudo apt-get install gstreamer1.0-tools gstreamer1.0-alsa \ gstreamer1.0-plugins-base gstreamer1.0-plugins-good \ gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly \ gstreamer1.0-libav gstreamer1.0-rtsp
sudo apt-get install libgstreamer1.0-dev \ libgstreamer-plugins-base1.0-dev \ libgstreamer-plugins-good1.0-dev \ libgstreamer-plugins-bad1.0-dev

2.2 查看GStreamer1.0版本

命令如下:

gst-inspect-1.0 --version

2.3 GStreamer硬编码推流

gst-launch-1.0 -v ximagesrc use-damage=0 ! nvvidconv ! nvv4l2h264enc ! queue ! h264parse! video/x-h264,stream-format=byte-stream ! rtspclientsink location=rtsp://192.168.31.183:554/test

2.4 笔记本电脑(或MFD)读取推流地址

● 笔记本电脑连上wifi,保证和Jetson同一局域网,打开cmd,输入 ping 192.168.31.183验证;
● 打开VLC播放器,找到媒体-》打开网络串流,输入rtsp://192.168.31.183:554/test
在这里插入图片描述

参考资料

1、Ubuntu1604交叉编译全志T7开发板ARM版Easydarwin
2、在TX2上基于GStreamer推流pipeline
3、安装GStreamer:NVIDIA Jetson: GStreamer 和 openMAX(gst-omx) 插件

猜你喜欢

转载自blog.csdn.net/weixin_43849871/article/details/129498936