当前位置:网站首页>NVIDIA Jetson: GStreamer 和 openMAX(gst-omx) 插件
NVIDIA Jetson: GStreamer 和 openMAX(gst-omx) 插件
2022-04-23 05:45:00 【许野平】
Nvidia 的 GPU 产品的开发工具包叫做 DeepStream,是基于 GStreamer 开发。因此,掌握 DeepStream,必须从 GStreamer 入手。先看看这货如何安装的吧!
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
sudo apt-get install libgstreamer1.0-dev \ libgstreamer-plugins-base1.0-dev \ libgstreamer-plugins-good1.0-dev \ libgstreamer-plugins-bad1.0-dev
2 查看 GStreamer-1.0 版本
命令如下:
gst-inspect-1.0 --version
3 GStreamer 插件
GStreamer 是靠插件组合成媒体流管道的,具体介绍可以参考《GStreamer官方入门课程一览表,快速帮你找到自己需要的范例》。本文来点实际的,聊聊那些可以用在Nvidia Jetson 上的非常实用的插件。
3.1 OpenMAX 插件
OpenMax 是开放多媒体加速层(英语:Open Media Acceleration,缩写为OpenMAX),一个不需要授权、跨平台的软件抽象层,以C语言实现的软件接口,用来处理多媒体。它是由Khronos Group提出的标准,也由他们来维持,目标在于创造一个统一的接口,加速大量多媒体资料的处理。
GStreamer 提供了一组基于 OpenMAX 的插件,名字叫做 gst-omx
。
3.1.1 视频解码器
视频解码器 | 说明 |
---|---|
omxh265dec | OpenMAX IL H.265 Video decoder |
omxh264dec | OpenMAX IL H.264 Video decoder |
omxmpeg4videodec | OpenMAX IL MPEG4 Video decoder |
omxmpeg2videodec | OpenMAX IL MPEG2 Video decoder |
omxvp8dec | OpenMAX IL VP8 Video decoder |
omxvp9dec | OpenMAX IL VP9 video decoder |
3.1.2 视频编码器
视频编码器 | 说明 |
---|---|
omxh264enc | OpenMAX IL H.264/AVC video encoder |
omxh265enc | OpenMAX IL H.265/AVC video encoder |
omxvp8enc | OpenMAX IL VP8 video encoder (supported with NVIDIA Jetson TX2/TX2i and NVIDIA Jetson Nano; not supported with NVIDIA Jetson AGX Xavier) |
omxvp9enc | OpenMAX IL VP9 video encoder (supported with Jetson TX2 and Jetson AGX Xavier; not supported with Jetson Nano) |
3.1.3 sink
视频 Sink | 说明 |
---|---|
nvoverlaysink | OpenMAX IL videosink element |
我写了个例子,可以获取 Nvidia Nona 上的 CSI 接口摄像头的视频信息,用 omxh264enc
编码,然后再用 omxh264dec
解码,最后送屏幕显示。
gst-launch-1.0 nvarguscamerasrc ! omxh264enc ! h264parse ! omxh264dec ! autovideosink
其中 nvarguscamerasrc(摄像头数据捕获) 、h264parse(h.264编码解析) 后面会继续介绍。如果您对 gst-launch-1.0
和其后面的管道配置参数不熟悉,请参考《深入浅出,快速弄明白 gst-launch-1.0 PIPELINE-DESCRIPTION 管道描述语法》。
3.1.5 gst-omx
不再被推荐使用
然而,Nvidia 的官方说明宣布,Linux for Tegra (L4T) Release 32.1 不推荐使用 gst-omx
。
我搜了一下,发现还有一个更老的版本叫做 gst-openmax
。如果那位朋友晓得 L4T 不推荐它的原因,可以给我留言。
关于 Tegra
2008年2月,早已敏锐洞察到了移动互联网市场的潜力的NVIDIA非常令人震惊的向业界发布了旗下一款重量级跨界产品——。
Tegra是一种采用单片机系统设计(system-on-a-chip)芯片,它集成了ARM架构处理器和NVIDIA的GeforceGPU,并内置了其它功能,产品主要面向小型设备。和Intel以PC为起点的x86架构相比,ARM架构的Tegra更像是以手机处理器为起点做出的发展。它不能运行x86 PC上的Windows XP等操作系统,但在手机上应用多年的ARM架构轻量级操作系统更能适应它高速低功耗的需求。
品牌推广编辑 播报
为了更好地在中国地区开展NVIDIA(英伟达)的品牌推广活动,使NVIDIA(英伟达)产品在中国地区更加深入人心并被广泛记忆,从2009年11月30日起,NVIDIA(英伟达)Tegra正式在中国启用中文名--“图睿”。“NVIDIA(英伟达)Tegra(图睿)”的中英文组合名称,被使用于所有的NVIDIA(英伟达)公关、销售及其他宣传材料中,以及NVIDIA(英伟达)合作伙伴的公关、销售及其他宣传材料中。“图睿”须与“Tegra”英文名称组合使用,不可以单独使用,且顺序不可以颠倒,即“Tegra”在前,“图睿”在后。
有关更多的信息请看后续文章… …
版权声明
本文为[许野平]所创,转载请带上原文链接,感谢
https://yeping.blog.csdn.net/article/details/124172950
边栏推荐
猜你喜欢
Generate excel template (drop-down selection, multi-level linkage)
[leetcode 67] sum of two binary numbers
Motor and drive (Qi Jinqing Edition)
几行代码教你爬取LOL皮肤图片
Export of data
Addition, deletion, query and modification of data
Generation of verification code
Class loading and classloader understanding
Preparedstatement prevents SQL injection
Substring Inversion (Easy Version)
随机推荐
Definition of C class and method
word排版遇到的格式问题
Cf6d lizards and fundamentals 2 problem solving
How SYSTEMd uses / etc / init D script
Stability building best practices
Integers have friends interval GCD + double pointer
Rust 中的 Rc智能指针
Plane semi intersecting plate
批量导出Arcgis属性表
GNU EFI header file
Formation à la programmation
电机与拖动(戚金清版)学习整理
程序設計訓練
Protected (members modified by protected are visible to this package and its subclasses)
基于pygame库编写的五子棋游戏
The bottom implementation principle of thread - static agent mode
Rust的闭包类型(Fn, FnMut, FnOne的区别)
Common sense of thread pool
Qthread simple test understanding
JDBC operation transaction