Jetson NX FFmpeg硬件编解码实现

nvidia jetson 平台使用 ffmpeg nvmpi 硬件编解码 ffmpeg 在nvidia jeston 上的硬件编解码 阅读详情
AI摘要

博主使用Jetson Xavier NX板子做视频处理时,发现CPU编解码效率低,考虑用硬解码。通过jtop查看,板子支持NVENC硬件编解码。随后编译了jetson-ffmpeg和ffmpeg两份源码,对ffmpeg打补丁修改,最后测试成功调用硬编码与硬解码。

最近在用Jetson Xavier NX板子做视频处理,但是CPU进行视频编解码,效率比较地下。

于是便考虑用硬解码来对视频进行处理。

通过jtop查看,发现板子是支持 NVENC硬件编解码的。

1、下载源码

因为需要对ffmpeg进行打补丁修改,因此需要编译两份源码

1.1、编译jetson-ffmpeg

1)、下载jetson-ffmpeg (https://github.com/Keylost/jetson-ffmpeg) 源码

2)、 编译jetson-ffmpeg

下载后,依次执行如下命令进行编译

cd jetson-ffmpeg
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig

1.2、编译ffmpeg

1)、下载ffmpeg源码

本博文 以 4.2版本为例

git clone git://source.ffmpeg.org/ffmpeg.git -b release/4.2 --depth=1

2)、下载patch补丁

网络上不少提示补丁地址

https://github.com/Keylost/jetson-ffmpeg/raw/master/ffmpeg_patches/ffmpeg4.2_nvmpi.patch

但是我执行,报错。

最后发现,在jetson-ffmpeg下面就有相应的patch版本

ll ffmpeg_patches/
total 116
drwxr-xr-x 2 root root  4096 10月 30 19:11 ./
drwxr-xr-x 8 root root  4096 10月 30 19:11 ../
-rw-r--r-- 1 root root 34433 10月 30 19:11 ffmpeg4.2_nvmpi.patch
-rw-r--r-- 1 root root 34216 10月 30 19:11 ffmpeg4.4_nvmpi.patch
-rw-r--r-- 1 root root 34497 10月 30 19:11 ffmpeg6.0_nvmpi.patch

将 对应的 ffmpeg4.2_nvmpi.patch 拷贝到ffmpeg目录下

3)、升级补丁

执行如下命令进行补丁升级4

git apply ffmpeg4.2_nvmpi.patch
ffmpeg4.2_nvmpi.patch:249: trailing whitespace.

ffmpeg4.2_nvmpi.patch:271: trailing whitespace.

ffmpeg4.2_nvmpi.patch:351: trailing whitespace.

ffmpeg4.2_nvmpi.patch:353: trailing whitespace.

ffmpeg4.2_nvmpi.patch:359: trailing whitespace.

warning: squelched 21 whitespace errors
warning: 26 lines add whitespace errors.

4)、编译ffmpeg

配置

mkdir build
cd build/
../configure --prefix=../ffmpeg_install

编译

make
make install

编译完成。

2、测试

执行如下命令,即可以使用硬编码

ffmpeg -c:v h264_nvmpi  -rtsp_transport tcp -i rtsp -hls_time 10 -hls_list_size 1 -hls_flags delete_segments -f hls index.m3u8

运行jtop 查看

已经调动了硬编码与硬解码

NVIDIA Jetson 系列采用nvmpi使用FFmpeg进行视频编码和解码的硬件加速功能环境配置说明 阅读详情

相关推荐

别再让Jetson NX的CPU跑视频了!手把手教你用FFmpeg+NVENC实现硬件编解码(附4.2版本完整编译流程)

本文详细介绍了如何在Jetson NX上使用FFmpeg和NVENC实现硬件编解码,显著提升视频处理效率。通过性能对比分析、FFmpeg定制编译流程和实战调优技巧,帮助开发者充分利用硬件加速能力,降低CPU负载,实现4.6倍的编码速度提升。

weixin_29212867的博客 378

jetson-ffmpeg:在Jetson Nano上的ffmpeg支持

杰森·弗佩格 ffmpeg的L4T多媒体API 1.构建并安装库 git clone https://github.com/jocover/jetson-ffmpeg.git cd jetson-ffmpeg mkdir build cd build cmake .. make sudo make install sudo ldconfig 2.修补ffmpeg并构建 git clone git://source.ffmpeg.org/ffmpeg.git -b release/4.2 --depth=1 cd ffmpeg wget https://github.com/jocover/jetson-ffmpeg/raw/master/ffmpeg_nvmpi.patch git apply ffmpeg_nvmpi.patch ./configure --enable-nvmp

解锁Jetson NX视频处理潜能:基于NVENC的FFmpeg硬件加速全攻略

本文详细介绍了如何在Jetson NX平台上,通过编译jetson-ffmpeg库并为FFmpeg源码打补丁,成功启用NVENC硬件编解码加速。该方案能显著降低CPU占用,大幅提升视频处理效率,适用于RTSP流转码、实时视频分析等边缘计算场景,充分释放Jetson NX的硬件潜能。

weixin_28366353的博客 637

【Jetson AGX Xavier-FFmpeg4.4+x264+nvmpi环境搭建】

Jetson AGX Xavier+FFmpeg4.4+x264+nvmpi环境进行相机取流及硬件解码测试。

qq_35044550的博客 1610

解锁Jetson NX视频处理潜能:基于FFmpeg与NVENC的硬件编解码实战

本文详细介绍了如何在Jetson NX上利用FFmpeg与NVENC实现硬件编解码,显著提升视频处理性能。通过源码编译、环境配置到实战测试的全流程指南,帮助开发者解锁Jetson NX的视频处理潜能,实现1080p视频编解码功耗降低60%,帧率提升8-10倍的效果。

weixin_29204749的博客 176

解锁Jetson NX潜能:基于FFmpeg与NVENC的硬件编解码实战指南

本文详细介绍了如何在Jetson NX平台上利用FFmpeg与NVENC实现硬件编解码,显著提升视频处理性能。通过环境配置、源码编译、实战调优及常见问题排查,帮助开发者充分发挥Jetson NX的硬件加速潜力,适用于实时视频流处理、多路并发编码等场景。

weixin_28720573的博客 395

Jetson Docker 编译 FFmpeg 支持硬解nvmpi

设备为NVIDIA Jetson Xavier NX,jetpack版本为 5.1.1 [L4T 35.3.1]使用的docker镜像为nvcr.io/nvidia/l4t-ml:r35.2.1-py3,详见。

一直大萝北的萝北坑 2774

在Jetson边缘设备上部署Frigate NVR:ARM架构下的AI视频分析实践

边缘计算通过在数据源头就近处理信息,有效降低延迟并提升隐私安全,其核心原理是将计算任务从云端下沉到网络边缘设备。这一技术价值在于能够实时处理视频流等密集型数据,特别适用于智能安防、工业检测等对实时性要求高的场景。在智能家居安防领域,本地AI视频分析成为关键需求,其中Frigate NVR作为开源解决方案,通过集成对象检测算法,实现了对‘人’、‘车’等目标的精准识别。本文将探讨在NVIDIA Jetson这类ARM架构边缘设备上部署Frigate时,如何克服Docker环境适配、GPU加速配置等工程挑战,并分

weixin_29188043的博客 317

jetson orin nx 编译ffmpeg启用h264_nvmpi h264_nvenc硬件加速

【代码】jetson orin nx 编译ffmpeg启用h264_nvmpi h264_nvenc硬件加速。

优快云的博客 490

Jetson 系列——nvidia jetson nano推流操作和 jetson xavier NX GStreamer 推流操作

nvidia jetson NX板子,拿来做做编解码试试看效果。datasheeet关于编解码这块描述如下:编码情况: 解码情况: JPEG编解码情况如下: 根据我自己做的测试,感觉264/265还不错,但是jpeg效果不太好。 我做实验的环境如下: jetpack和L4T都是最新的官方推荐版本。下面我把一些实验过程与结果记录如下。 第一部分:环境准备 首先你要有一个nvidia帐号,用于下载文档和各种软件。 在ubuntu1604的个人pc上安装sdk mamager,这里注意是在pc上。

RichardoMu的博客 1万+

解锁NVIDIA Jetson硬件编解码潜力:集成FFmpeg与NVMPI实战指南

本文提供了一份详细的实战指南,指导开发者如何为NVIDIA Jetson平台集成FFmpeg与NVMPI,以解锁其硬件编解码潜力。通过编译jetson-ffmpeg库和mad-jetson-ffmpeg分支,文章手把手教你配置、编译并验证支持硬件加速的FFmpeg,从而大幅提升视频处理效率,降低CPU负载。

sprite的博客 563

保姆级教程:为Jetson NX的FFmpeg 4.2手动打上NVMPI补丁,开启硬编解码全流程

本文提供详细的Jetson NX FFmpeg 4.2硬件编解码配置教程,涵盖NVMPI补丁应用、源码编译优化及性能测试全流程。通过启用NVENC/NVDEC硬件加速,显著降低CPU负载,提升视频处理效率,适用于嵌入式视频处理场景。

weixin_30379531的博客 415

Jetson NX上FFmpeg硬编解码的‘隐藏’配置:NVENC驱动、补丁选择与编译参数详解

本文深入解析Jetson NX上FFmpeg硬件编解码的配置技巧,重点介绍NVENC驱动的使用、补丁选择与编译参数优化。通过实战案例展示如何充分利用NVIDIA硬件加速单元,提升视频处理效率,解决开发者常见的性能瓶颈问题。

weixin_29199873的博客 398

Jetson Xavier NX FFmpeg支持硬件编解码

Jetson Xavier NX平台上FFmpeg硬件编加码支持

一步一脚印 4607

解锁NVIDIA Jetson硬件编解码:集成FFmpeg与NVMPI实战指南

本文详细介绍了如何在NVIDIA Jetson平台上集成FFmpeg与NVMPI,以解锁硬件编解码能力。通过编译jetson-ffmpeg库和定制FFmpeg,开发者可以显著提升视频处理效率,将编解码负载从CPU转移至专用硬件单元。指南涵盖了环境搭建、编译步骤、实战验证及常见问题解决,帮助用户构建高性能的边缘视频处理应用。

weixin_29183637的博客 78

JetsonNano —— 3、在Nano板卡编译可硬件加速FFmpeg,测试FFmpeg调用nvmpi编解码器加速

在Nano板卡编译可硬件加速FFmpeg,测试ffmpeg调用nvmpi编解码器加速

1354

Jetson Xavier NX developing with FFmpeg

编译完成后,ffmpeg -hwaccels 通过 ffmpeg -codecs | grep h264查看支持H264编解码方式,DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m h264_nvv4l2dec ) (encoders: libx264 libx264rgb h264_v4l2m2m ),会发现NVIDIA ffmpeg包支持硬件解码,不支持硬件编码。

cnrgq2010的博客 1892

ffmpeg硬解码-jetson平台

http://ffmpeg.org/pipermail/ffmpeg-devel/2020-June/263746.html 该链接中的patch不好用,本资源为修复后可编译的源码

上一篇: jetson NX 刷机教程
下一篇: 车牌检测识别功能实现(pyqt)
reset2021
博客等级 码龄5年 561粉丝 415原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

reset2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值