当前位置: 首页 > news >正文

AGX Xavier 搭建360环视教程【一、先确认方案】

设备默认自带 NVIDIA 硬件编解码能力(NVDEC/NVENC),但是需要你在 OpenCV FFmpeg 里正确启用 + 调通 GStreamer nvmpi,才真正能用起来!

这里的硬解码是核心:

Jetson 平台的硬解码,要么走 GStreamer(nvv4l2)要么走 RidgeRun 的 nvmpi(FFmpeg 插件),否则就只能 CPU 软解。

 推荐的技术路线(实战稳定)

【1】 RTSP → GPU 硬解(输入)

选项 1:GStreamer nvv4l2(官方推荐)

gst-launch-1.0 rtspsrc location=rtsp://... ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! appsink

然后在 OpenCV 中用

 cv::VideoCapture("your_pipeline", cv::CAP_GSTREAMER)

直接拿到。

选项 2:FFmpeg + nvmpi
如果 GStreamer 用不了(极少数),就自己编 nvmpi + FFmpeg。


【2】 remap + 拼接(处理)

  • 保留 OpenCV remap

  • 若想用 GPU 做 remap,需要用 OpenCV CUDA 模块cv::cuda::remap),
    但要编译时 WITH_CUDA=ON WITH_CUBLAS=ON


【3】 拼接后 → RTSP 推流(输出)

✅ 用 FFmpeg 的 libx264(CPU 编码) → ffmpeg -f rawvideo -pix_fmt bgr24 -i pipe:0 ...
✅ 用 GStreamer nvvidconv + nvv4l2h264enc(GPU 编码)→ RTSP server


⚡ 必须重装的组件

1️⃣ OpenCV 必须重新编译

cmake \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_CUDA=ON \
-D WITH_CUDNN=ON \
-D WITH_GSTREAMER=ON \
-D WITH_TBB=ON \
-D WITH_OPENGL=ON \
-D BUILD_opencv_python2=OFF \
-D BUILD_opencv_python3=ON \
-D BUILD_TESTS=OFF \
-D BUILD_EXAMPLES=OFF \
..

🚩 一定要确认 WITH_GSTREAMER=ONWITH_CUDA=ON

2️⃣ FFmpeg(可选)
如果你走 nvmpi 路线,要重新编译 FFmpeg:

./configure --enable-nonfree --enable-nvmpi --enable-shared ...

🎯 推荐实战路线(总结)

✅ 1)输入 → GStreamer(nvv4l2)GPU 硬解 → OpenCV VideoCapture
✅ 2)处理 → OpenCV CUDA(可选)做 remap → 拼接
✅ 3)输出 → 用 FFmpeg/GStreamer nvv4l2h264enc 硬编码 → rtsp-simple-servermediamtx


🚦 一句话:

Jetson NX 在 JetPack 4.5 下,最稳的组合就是:GStreamer 负责硬解码 + 硬编码,OpenCV 只做逻辑,不做解码/编码。

http://www.dtcms.com/a/274706.html

相关文章:

  • Kafka——应该选择哪种Kafka?
  • 三种方法批量填充订单表中的空白单元格--python,excel vba,excel
  • 【深度学习新浪潮】图像生成有哪些最新进展?
  • linux-base-end
  • 从《哪吒 2》看个人IP的破局之道|创客匠人
  • NodeJs后端常用三方库汇总
  • css——width: fit-content 宽度、自适应
  • lesson10:Python的元组
  • UI前端与数字孪生结合实践探索:智慧农业的精准灌溉系统
  • FastAPI + SQLAlchemy (异步版)连接数据库时,对数据进行加密
  • C++(STL源码刨析/List)
  • [Meetily后端框架] Whisper转录服务器 | 后端服务管理脚本
  • 如何从0开始构建自己的第一个AI应用?(Prompt工程、Agent自定义、Tuning)
  • MyBatis:SQL与Java的智能桥梁
  • Ant Design ProTable组件深度解析
  • CUDA —— 2.3、cuda静态全局变量__device__使用介绍(附:完整代码)
  • 系统思考:多元胜过能力
  • 计算机网络第三章(5)——数据链路层《广域网》
  • 解锁形状与空间的奥秘:微分几何与流形一瞥-AI云计算拓展核心内容
  • 【C++篇】二叉树进阶(上篇):二叉搜索树
  • 云蝠智能 VoiceAgent重构企业呼入场景服务范式
  • Ubuntu20.04运行openmvg和openmvs实现三维重建(未成功,仅供参考)
  • PyTorch笔记5----------Autograd、nn库
  • 《棒球规则介绍》领队和主教练谁说了算·棒球1号位
  • sqli-labs靶场通关笔记:第1-4关 联合注入
  • ros topic和service的使用
  • 深入浅出Redis:一文掌握Redis底层数据结构与实现原理
  • Java Stream流介绍及使用指南
  • GIC控制器 (三)
  • 猿人学js逆向比赛第一届第十八题