Jetson Nano2GB(TX2\NX\XAVIER)使用ffmpeg进行硬解码配置笔记

 到目前为止Jetson设备ffmpeg 硬件编码尚不可用。

l4t3261 jetpack4.6

 FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。 FFmpeg编码库可以使用GPU加速

nvidia论坛地址参考

Jetson开发人员指南 

$ echo "deb https://repo.download.nvidia.com/jetson/ffmpeg main main" |  sudo tee -a /etc/apt/sources.list
$ echo "deb-src https://repo.download.nvidia.com/jetson/ffmpeg main main" |  sudo tee -a /etc/apt/sources.list
$ sudo apt update
$ apt source ffmpeg
$ Reading package lists... Done
Need to get 8,960 kB of source archives.
Get:1 https://repo.download.nvidia.cn/jetson/ffmpeg main/main ffmpeg 7:4.2.7-nvidia (dsc) [592 B]
Get:2 https://repo.download.nvidia.cn/jetson/ffmpeg main/main ffmpeg 7:4.2.7-nvidia (tar) [8,960 kB]
Fetched 8,960 kB in 11s (834 kB/s)
dpkg-source: info: extracting ffmpeg in ffmpeg-4.2.7
dpkg-source: info: unpacking ffmpeg_4.2.7-nvidia.tar.xz

 

cd ffmpeg-4.2.7/
ljx@ljx-desktop:~/ffmpeg-4.2.7$ ls
Changelog  CONTRIBUTING.md  COPYING.LGPLv2.1  debian   fftools     libavdevice  libavresample  libswresample  MAINTAINERS  README.md      RELEASE_NOTES
compat     COPYING.GPLv2    COPYING.LGPLv3    doc      INSTALL.md  libavfilter  libavutil      libswscale     Makefile     README.nvidia  tests
configure  COPYING.GPLv3    CREDITS           ffbuild  libavcodec  libavformat  libpostproc    LICENSE.md     presets      RELEASE        tools
ljx@ljx-desktop:~/ffmpeg-4.2.7$ ffmepg -decoders | grep nvv
-bash: ffmepg: command not found
ljx@ljx-desktop:~/ffmpeg-4.2.7$ ./configure --enable-nvv4l2dec --enable-libv4l2 --extra-libs="-L/usr/lib/aarch64-linux-gnu/tegra -lnvbuf_utils" --extra-cflags="-I /usr/src/jetson_multimedia_api/include/"
ERROR: libv4l2 not found using pkg-config

 尝试解决:

 sudo apt-get install libv4l-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  apt-clone archdetect-deb aufs-tools bogl-bterm busybox-static cryptsetup-bin dpkg-repack gir1.2-timezonemap-1.0 gir1.2-xkl-1.0 gyp kde-window-manager kinit kio kpackagetool5
  kwayland-data kwin-common kwin-x11 libdebian-installer4 libjs-async libjs-inherits libjs-node-uuid libkdecorations2-5v5 libkdecorations2private5v5 libkf5activities5 libkf5attica5
  libkf5completion-data libkf5completion5 libkf5declarative-data libkf5declarative5 libkf5doctools5 libkf5globalaccel-data libkf5globalaccel5 libkf5globalaccelprivate5 libkf5idletime5
  libkf5jobwidgets-data libkf5jobwidgets5 libkf5kcmutils-data libkf5kcmutils5 libkf5kiocore5 libkf5kiontlm5 libkf5kiowidgets5 libkf5newstuff-data libkf5newstuff5 libkf5newstuffcore5
  libkf5package-data libkf5package5 libkf5plasma5 libkf5quickaddons5 libkf5solid5 libkf5solid5-data libkf5sonnet5-data libkf5sonnetcore5 libkf5sonnetui5 libkf5textwidgets-data
  libkf5textwidgets5 libkf5waylandclient5 libkf5waylandserver5 libkf5xmlgui-bin libkf5xmlgui-data libkf5xmlgui5 libkscreenlocker5 libkwin4-effect-builtins1 libkwineffects11
  libkwinglutils11 libkwinxrenderutils11 liblua50 liblualib50 libuv1-dev libwireshark14 libwiretap11 libwsutil12 libxcb-cursor0 libxcb-damage0 lua50 node-abbrev node-ansi
  node-ansi-color-table node-archy node-async node-balanced-match node-block-stream node-brace-expansion node-combined-stream node-concat-map node-cookie-jar node-delayed-stream
  node-forever-agent node-form-data node-fs.realpath node-fstream node-fstream-ignore node-github-url-from-git node-glob node-graceful-fs node-hosted-git-info node-inflight node-inherits
  node-ini node-isexe node-json-stringify-safe node-lockfile node-lru-cache node-mime node-minimatch node-mkdirp node-mute-stream node-node-uuid node-nopt node-npmlog node-once node-osenv
  node-path-is-absolute node-pseudomap node-qs node-read node-request node-retry node-rimraf node-semver node-sha node-slide node-spdx-correct node-spdx-expression-parse
  node-spdx-license-ids node-tar node-tunnel-agent node-underscore node-validate-npm-package-license node-which node-wrappy node-yallist openjdk-8-jdk-headless python3-dbus.mainloop.pyqt5
  python3-icu python3-pam python3-pyqt5.qtsvg python3-pyqt5.qtwebkit qml-module-org-kde-kquickcontrolsaddons rdate tasksel tasksel-data ubuntu-fan
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  libv4l-dev
0 upgraded, 1 newly installed, 0 to remove and 6 not upgraded.
Need to get 98.6 kB of archives.
After this operation, 404 kB of additional disk space will be used.
Get:1 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 libv4l-dev arm64 1.14.2-1 [98.6 kB]
Fetched 98.6 kB in 2s (65.4 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libv4l-dev:arm64.
dpkg: warning: files list file for package 'libeigen3-dev' missing; assuming package has no files currently installed
(Reading database ... 281683 files and directories currently installed.)
Preparing to unpack .../libv4l-dev_1.14.2-1_arm64.deb ...
Unpacking libv4l-dev:arm64 (1.14.2-1) ...
Setting up libv4l-dev:arm64 (1.14.2-1) ...

该过程中最令人担忧的步骤是必须 install libv4l-dev,我不清楚为什么它没有包含在 jetpack 中,或者如果包含,为什么 configure 找不到该库

export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:/home/ljx/ffmpeg-4.2.7/libavdevice:/home/ljx/ffmpeg-4.2.7/libavfilter:/home/ljx/ffmpeg-4.2.7/libavformat:/home/ljx/ffmpeg-4.2.7/libavcodec:/home/ljx/ffmpeg-4.2.7/libavformat:/home/ljx/ffmpeg-4.2.7/libswresample:/home/ljx/ffmpeg-4.2.7/libswscale:/home/ljx/ffmpeg-4.2.7/libavutil:

注意你的用户名 :

最后(这很关键),无论何时运行 ffmpeg,您都需要参考那些最近编译的库。两个选项,在您运行 ffmpeg 时将它们导出到您的LD_LIBRARY_PATH任何时候,或者将它们复制到您要链接库的任何位置。前者的说明如下(使用 的编译目录~/ffmpeg-4.2.7):

一个好的建议是将其添加到您的 bash 配置文件中以便始终执行此操作:)

./configure --enable-nvv4l2dec --enable-libv4l2 --extra-libs="-L/usr/lib/aarch64-linux-gnu/tegra -lnvbuf_utils" --extra-cflags="-I /usr/src/jetson_multimedia_api/include/"
install prefix            /usr/local
source path               .
C compiler                gcc
C library                 glibc
ARCH                      aarch64 (generic)
big-endian                no
runtime cpu detection     yes
NEON enabled              yes
VFP enabled               yes
debug symbols             yes
strip symbols             yes
optimize for size         no
optimizations             yes
static                    yes
shared                    no
postprocessing support    no
network support           yes
threading support         pthreads
safe bitstream reader     yes
texi2html enabled         no
perl enabled              yes
pod2man enabled           yes
makeinfo enabled          no
makeinfo supports HTML    no

External libraries:
alsa                    iconv                   libxcb                  libxcb_shm              lzma
bzlib                   libv4l2                 libxcb_shape            libxcb_xfixes           zlib

External libraries providing hardware acceleration:
cuda_llvm               nvv4l2dec               v4l2_m2m

Libraries:
avcodec                 avdevice                avfilter                avformat                avutil                  swresample              swscale

Programs:
ffmpeg                  ffprobe

Enabled decoders:
aac                     asv2                    eatgq                   jpeg2000                pam                     roq                     v410
aac_fixed               atrac1                  eatgv                   jpegls                  pbm                     roq_dpcm                vb
aac_latm                atrac3                  eatqi                   jv                      pcm_alaw                rpza                    vble
aasc                    atrac3al                eightbps                kgv1                    pcm_bluray              rscc                    vc1
ac3                     atrac3p                 eightsvx_exp            kmvc                    pcm_dvd                 rv10                    vc1_v4l2m2m
ac3_fixed               atrac3pal               eightsvx_fib            lagarith                pcm_f16le               rv20                    vc1image
adpcm_4xm               atrac9                  escape124               loco                    pcm_f24le               rv30                    vcr1
adpcm_adx               aura                    escape130               lscr                    pcm_f32be               rv40                    vmdaudio
adpcm_afc               aura2                   evrc                    m101                    pcm_f32le               s302m                   vmdvideo
adpcm_agm               avrn                    exr                     mace3                   pcm_f64be               sami                    vmnc
adpcm_aica              avrp                    ffv1                    mace6                   pcm_f64le               sanm                    vorbis
adpcm_ct                avs                     ffvhuff                 magicyuv                pcm_lxf                 sbc                     vp3
adpcm_dtk               avui                    ffwavesynth             mdec                    pcm_mulaw               scpr                    vp4
adpcm_ea                ayuv                    fic                     metasound               pcm_s16be               screenpresso            vp5
adpcm_ea_maxis_xa       bethsoftvid             fits                    microdvd                pcm_s16be_planar        sdx2_dpcm               vp6
adpcm_ea_r1             bfi                     flac                    mimic                   pcm_s16le               sgi                     vp6a
adpcm_ea_r2             bink                    flashsv                 mjpeg                   pcm_s16le_planar        sgirle                  vp6f
adpcm_ea_r3             binkaudio_dct           flashsv2                mjpegb                  pcm_s24be               sheervideo              vp7
adpcm_ea_xas            binkaudio_rdft          flic                    mlp                     pcm_s24daud             shorten                 vp8
adpcm_g722              bintext                 flv                     mmvideo                 pcm_s24le               sipr                    vp8_nvv4l2dec
adpcm_g726              bitpacked               fmvc                    motionpixels            pcm_s24le_planar        smackaud                vp8_v4l2m2m
adpcm_g726le            bmp                     fourxm                  movtext                 pcm_s32be               smacker                 vp9
adpcm_ima_amv           bmv_audio               fraps                   mp1                     pcm_s32le               smc                     vp9_nvv4l2dec
adpcm_ima_apc           bmv_video               frwu                    mp1float                pcm_s32le_planar        smvjpeg                 vp9_v4l2m2m
adpcm_ima_dat4          brender_pix             g2m                     mp2                     pcm_s64be               snow                    vplayer
adpcm_ima_dk3           c93                     g723_1                  mp2float                pcm_s64le               sol_dpcm                vqa
adpcm_ima_dk4           cavs                    g729                    mp3                     pcm_s8                  sonic                   wavpack
adpcm_ima_ea_eacs       ccaption                gdv                     mp3adu                  pcm_s8_planar           sp5x                    wcmv
adpcm_ima_ea_sead       cdgraphics              gif                     mp3adufloat             pcm_u16be               speedhq                 webp
adpcm_ima_iss           cdxl                    gremlin_dpcm            mp3float                pcm_u16le               srgc                    webvtt
adpcm_ima_oki           cfhd                    gsm                     mp3on4                  pcm_u24be               srt                     wmalossless
adpcm_ima_qt            cinepak                 gsm_ms                  mp3on4float             pcm_u24le               ssa                     wmapro
adpcm_ima_rad           clearvideo              h261                    mpc7                    pcm_u32be               stl                     wmav1
adpcm_ima_smjpeg        cljr                    h263                    mpc8                    pcm_u32le               subrip                  wmav2
adpcm_ima_wav           cllc                    h263_v4l2m2m            mpeg1_v4l2m2m           pcm_u8                  subviewer               wmavoice
adpcm_ima_ws            comfortnoise            h263i                   mpeg1video              pcm_vidc                subviewer1              wmv1
adpcm_ms                cook                    h263p                   mpeg2_nvv4l2dec         pcm_zork                sunrast                 wmv2
adpcm_mtaf              cpia                    h264                    mpeg2_v4l2m2m           pcx                     svq1                    wmv3
adpcm_psx               cscd                    h264_nvv4l2dec          mpeg2video              pgm                     svq3                    wmv3image
adpcm_sbpro_2           cyuv                    h264_v4l2m2m            mpeg4                   pgmyuv                  tak                     wnv1
adpcm_sbpro_3           dca                     hap                     mpeg4_nvv4l2dec         pgssub                  targa                   wrapped_avframe
adpcm_sbpro_4           dds                     hcom                    mpeg4_v4l2m2m           pictor                  targa_y216              ws_snd1
adpcm_swf               dfa                     hevc                    mpegvideo               pixlet                  tdsc                    xan_dpcm
adpcm_thp               dirac                   hevc_nvv4l2dec          mpl2                    pjs                     text                    xan_wc3
adpcm_thp_le            dnxhd                   hevc_v4l2m2m            msa1                    png                     theora                  xan_wc4
adpcm_vima              dolby_e                 hnm4_video              mscc                    ppm                     thp                     xbin
adpcm_xa                dpx                     hq_hqa                  msmpeg4v1               prores                  tiertexseqvideo         xbm
adpcm_yamaha            dsd_lsbf                hqx                     msmpeg4v2               prosumer                tiff                    xface
agm                     dsd_lsbf_planar         huffyuv                 msmpeg4v3               psd                     tmv                     xl
aic                     dsd_msbf                hymt                    msrle                   ptx                     truehd                  xma1
alac                    dsd_msbf_planar         iac                     mss1                    qcelp                   truemotion1             xma2
alias_pix               dsicinaudio             idcin                   mss2                    qdm2                    truemotion2             xpm
als                     dsicinvideo             idf                     msvideo1                qdmc                    truemotion2rt           xsub
amrnb                   dss_sp                  iff_ilbm                mszh                    qdraw                   truespeech              xwd
amrwb                   dst                     ilbc                    mts2                    qpeg                    tscc                    y41p
amv                     dvaudio                 imc                     mvc1                    qtrle                   tscc2                   ylc
anm                     dvbsub                  imm4                    mvc2                    r10k                    tta                     yop
ansi                    dvdsub                  indeo2                  mwsc                    r210                    twinvq                  yuv4
ape                     dvvideo                 indeo3                  mxpeg                   ra_144                  txd                     zero12v
apng                    dxa                     indeo4                  nellymoser              ra_288                  ulti                    zerocodec
aptx                    dxtory                  indeo5                  nuv                     ralf                    utvideo                 zlib
aptx_hd                 dxv                     interplay_acm           on2avc                  rasc                    v210                    zmbv
arbc                    eac3                    interplay_dpcm          opus                    rawvideo                v210x
ass                     eacmv                   interplay_video         paf_audio               realtext                v308
asv1                    eamad                   jacosub                 paf_video               rl2                     v408

Enabled encoders:
a64multi                avrp                    h261                    nellymoser              pcm_s64le               rawvideo                v308
a64multi5               avui                    h263                    opus                    pcm_s8                  roq                     v408
aac                     ayuv                    h263_v4l2m2m            pam                     pcm_s8_planar           roq_dpcm                v410
ac3                     bmp                     h263p                   pbm                     pcm_u16be               rv10                    vc2
ac3_fixed               cinepak                 h264_v4l2m2m            pcm_alaw                pcm_u16le               rv20                    vorbis
adpcm_adx               cljr                    hevc_v4l2m2m            pcm_dvd                 pcm_u24be               s302m                   vp8_v4l2m2m
adpcm_g722              comfortnoise            huffyuv                 pcm_f32be               pcm_u24le               sbc                     wavpack
adpcm_g726              dca                     jpeg2000                pcm_f32le               pcm_u32be               sgi                     webvtt
adpcm_g726le            dnxhd                   jpegls                  pcm_f64be               pcm_u32le               snow                    wmav1
adpcm_ima_qt            dpx                     ljpeg                   pcm_f64le               pcm_u8                  sonic                   wmav2
adpcm_ima_wav           dvbsub                  magicyuv                pcm_mulaw               pcm_vidc                sonic_ls                wmv1
adpcm_ms                dvdsub                  mjpeg                   pcm_s16be               pcx                     srt                     wmv2
adpcm_swf               dvvideo                 mlp                     pcm_s16be_planar        pgm                     ssa                     wrapped_avframe
adpcm_yamaha            eac3                    movtext                 pcm_s16le               pgmyuv                  subrip                  xbm
alac                    ffv1                    mp2                     pcm_s16le_planar        png                     sunrast                 xface
alias_pix               ffvhuff                 mp2fixed                pcm_s24be               ppm                     svq1                    xsub
amv                     fits                    mpeg1video              pcm_s24daud             prores                  targa                   xwd
apng                    flac                    mpeg2video              pcm_s24le               prores_aw               text                    y41p
aptx                    flashsv                 mpeg4                   pcm_s24le_planar        prores_ks               tiff                    yuv4
aptx_hd                 flashsv2                mpeg4_v4l2m2m           pcm_s32be               qtrle                   truehd                  zlib
ass                     flv                     msmpeg4v2               pcm_s32le               r10k                    tta                     zmbv
asv1                    g723_1                  msmpeg4v3               pcm_s32le_planar        r210                    utvideo
asv2                    gif                     msvideo1                pcm_s64be               ra_144                  v210

Enabled hwaccels:

Enabled parsers:
aac                     cavsvideo               dvbsub                  gsm                     mpeg4video              rv40                    vp8
aac_latm                cook                    dvd_nav                 h261                    mpegaudio               sbc                     vp9
ac3                     dca                     dvdsub                  h263                    mpegvideo               sipr                    xma
adx                     dirac                   flac                    h264                    opus                    tak
av1                     dnxhd                   g723_1                  hevc                    png                     vc1
avs2                    dpx                     g729                    mjpeg                   pnm                     vorbis
bmp                     dvaudio                 gif                     mlp                     rv30                    vp3

Enabled demuxers:
aa                      cavsvideo               gif                     image_xpm_pipe          musx                    redspark                tmv
aac                     cdg                     gsm                     image_xwd_pipe          mv                      rl2                     truehd
ac3                     cdxl                    gxf                     ingenient               mvi                     rm                      tta
acm                     cine                    h261                    ipmovie                 mxf                     roq                     tty
act                     codec2                  h263                    ircam                   mxg                     rpl                     txd
adf                     codec2raw               h264                    iss                     nc                      rsd                     ty
adp                     concat                  hcom                    iv8                     nistsphere              rso                     v210
ads                     data                    hevc                    ivf                     nsp                     rtp                     v210x
adx                     daud                    hls                     ivr                     nsv                     rtsp                    vag
aea                     dcstr                   hnm                     jacosub                 nut                     s337m                   vc1
afc                     dfa                     ico                     jv                      nuv                     sami                    vc1t
aiff                    dhav                    idcin                   kux                     ogg                     sap                     vividas
aix                     dirac                   idf                     live_flv                oma                     sbc                     vivo
amr                     dnxhd                   iff                     lmlm4                   paf                     sbg                     vmd
amrnb                   dsf                     ifv                     loas                    pcm_alaw                scc                     vobsub
amrwb                   dsicin                  ilbc                    lrc                     pcm_f32be               sdp                     voc
anm                     dss                     image2                  lvf                     pcm_f32le               sdr2                    vpk
apc                     dts                     image2_alias_pix        lxf                     pcm_f64be               sds                     vplayer
ape                     dtshd                   image2_brender_pix      m4v                     pcm_f64le               sdx                     vqf
apng                    dv                      image2pipe              matroska                pcm_mulaw               segafilm                w64
aptx                    dvbsub                  image_bmp_pipe          mgsts                   pcm_s16be               ser                     wav
aptx_hd                 dvbtxt                  image_dds_pipe          microdvd                pcm_s16le               shorten                 wc3
aqtitle                 dxa                     image_dpx_pipe          mjpeg                   pcm_s24be               siff                    webm_dash_manifest
asf                     ea                      image_exr_pipe          mjpeg_2000              pcm_s24le               sln                     webvtt
asf_o                   ea_cdata                image_gif_pipe          mlp                     pcm_s32be               smacker                 wsaud
ass                     eac3                    image_j2k_pipe          mlv                     pcm_s32le               smjpeg                  wsd
ast                     epaf                    image_jpeg_pipe         mm                      pcm_s8                  smush                   wsvqa
au                      ffmetadata              image_jpegls_pipe       mmf                     pcm_u16be               sol                     wtv
avi                     filmstrip               image_pam_pipe          mov                     pcm_u16le               sox                     wv
avr                     fits                    image_pbm_pipe          mp3                     pcm_u24be               spdif                   wve
avs                     flac                    image_pcx_pipe          mpc                     pcm_u24le               srt                     xa
avs2                    flic                    image_pgm_pipe          mpc8                    pcm_u32be               stl                     xbin
bethsoftvid             flv                     image_pgmyuv_pipe       mpegps                  pcm_u32le               str                     xmv
bfi                     fourxm                  image_pictor_pipe       mpegts                  pcm_u8                  subviewer               xvag
bfstm                   frm                     image_png_pipe          mpegtsraw               pcm_vidc                subviewer1              xwma
bink                    fsb                     image_ppm_pipe          mpegvideo               pjs                     sup                     yop
bintext                 g722                    image_psd_pipe          mpjpeg                  pmp                     svag                    yuv4mpegpipe
bit                     g723_1                  image_qdraw_pipe        mpl2                    pva                     swf
bmv                     g726                    image_sgi_pipe          mpsub                   pvf                     tak
boa                     g726le                  image_sunrast_pipe      msf                     qcp                     tedcaptions
brstm                   g729                    image_svg_pipe          msnwc_tcp               r3d                     thp
c93                     gdv                     image_tiff_pipe         mtaf                    rawvideo                threedostr
caf                     genh                    image_webp_pipe         mtv                     realtext                tiertexseq

Enabled muxers:
a64                     data                    gxf                     mjpeg                   ogv                     psp                     tg2
ac3                     daud                    h261                    mkvtimestamp_v2         oma                     rawvideo                tgp
adts                    dirac                   h263                    mlp                     opus                    rm                      truehd
adx                     dnxhd                   h264                    mmf                     pcm_alaw                roq                     tta
aiff                    dts                     hash                    mov                     pcm_f32be               rso                     uncodedframecrc
amr                     dv                      hds                     mp2                     pcm_f32le               rtp                     vc1
apng                    eac3                    hevc                    mp3                     pcm_f64be               rtp_mpegts              vc1t
aptx                    f4v                     hls                     mp4                     pcm_f64le               rtsp                    voc
aptx_hd                 ffmetadata              ico                     mpeg1system             pcm_mulaw               sap                     w64
asf                     fifo                    ilbc                    mpeg1vcd                pcm_s16be               sbc                     wav
asf_stream              fifo_test               image2                  mpeg1video              pcm_s16le               scc                     webm
ass                     filmstrip               image2pipe              mpeg2dvd                pcm_s24be               segafilm                webm_chunk
ast                     fits                    ipod                    mpeg2svcd               pcm_s24le               segment                 webm_dash_manifest
au                      flac                    ircam                   mpeg2video              pcm_s32be               singlejpeg              webp
avi                     flv                     ismv                    mpeg2vob                pcm_s32le               smjpeg                  webvtt
avm2                    framecrc                ivf                     mpegts                  pcm_s8                  smoothstreaming         wtv
avs2                    framehash               jacosub                 mpjpeg                  pcm_u16be               sox                     wv
bit                     framemd5                latm                    mxf                     pcm_u16le               spdif                   yuv4mpegpipe
caf                     g722                    lrc                     mxf_d10                 pcm_u24be               spx
cavsvideo               g723_1                  m4v                     mxf_opatom              pcm_u24le               srt
codec2                  g726                    matroska                null                    pcm_u32be               stream_segment
codec2raw               g726le                  matroska_audio          nut                     pcm_u32le               sup
crc                     gif                     md5                     oga                     pcm_u8                  swf
dash                    gsm                     microdvd                ogg                     pcm_vidc                tee

Enabled protocols:
async                   ffrtmphttp              http                    mmst                    rtp                     tee
cache                   file                    httpproxy               pipe                    sctp                    udp
concat                  ftp                     icecast                 prompeg                 srtp                    udplite
crypto                  gopher                  md5                     rtmp                    subfile                 unix
data                    hls                     mmsh                    rtmpt                   tcp

Enabled filters:
abench                  anullsrc                colorchannelmixer       extrastereo             limiter                 random                  sobel
abitscope               apad                    colorhold               fade                    loop                    readeia608              spectrumsynth
acompressor             aperms                  colorkey                fftdnoiz                loudnorm                readvitc                split
acontrast               aphasemeter             colorlevels             fftfilt                 lowpass                 realtime                sr
acopy                   aphaser                 colorspace              field                   lowshelf                remap                   ssim
acrossfade              apulsator               compand                 fieldhint               lumakey                 removegrain             stereotools
acrossover              arealtime               compensationdelay       fieldmatch              lut                     removelogo              stereowiden
acrusher                aresample               concat                  fieldorder              lut1d                   replaygain              streamselect
acue                    areverse                convolution             fifo                    lut2                    reverse                 superequalizer
adeclick                aselect                 convolve                fillborders             lut3d                   rgbashift               surround
adeclip                 asendcmd                copy                    firequalizer            lutrgb                  rgbtestsrc              swaprect
adelay                  asetnsamples            crop                    flanger                 lutyuv                  roberts                 swapuv
aderivative             asetpts                 crossfeed               floodfill               mandelbrot              rotate                  tblend
adrawgraph              asetrate                crystalizer             format                  maskedclamp             scale                   telecine
aecho                   asettb                  cue                     fps                     maskedmerge             scale2ref               testsrc
aemphasis               ashowinfo               curves                  framepack               maskfun                 select                  testsrc2
aeval                   asidedata               datascope               framerate               mcompand                selectivecolor          threshold
aevalsrc                asoftclip               dcshift                 framestep               mergeplanes             sendcmd                 thumbnail
afade                   asplit                  dctdnoiz                freezedetect            mestimate               separatefields          tile
afftdn                  astats                  deband                  gblur                   metadata                setdar                  tlut2
afftfilt                astreamselect           deblock                 gradfun                 midequalizer            setfield                tmix
afifo                   atadenoise              decimate                graphmonitor            minterpolate            setparams               tonemap
afir                    atempo                  deconvolve              greyedge                mix                     setpts                  tpad
aformat                 atrim                   dedot                   haas                    movie                   setrange                transpose
agate                   avectorscope            deesser                 haldclut                negate                  setsar                  treble
agraphmonitor           avgblur                 deflate                 haldclutsrc             nlmeans                 settb                   tremolo
ahistogram              bandpass                deflicker               hdcd                    noformat                showcqt                 trim
aiir                    bandreject              dejudder                headphone               noise                   showfreqs               unpremultiply
aintegral               bass                    derain                  hflip                   normalize               showinfo                unsharp
ainterleave             bbox                    deshake                 highpass                null                    showpalette             vectorscope
alimiter                bench                   despill                 highshelf               nullsink                showspatial             vflip
allpass                 biquad                  detelecine              hilbert                 nullsrc                 showspectrum            vfrdet
allrgb                  bitplanenoise           dilation                histogram               oscilloscope            showspectrumpic         vibrance
allyuv                  blackdetect             displace                hqx                     overlay                 showvolume              vibrato
aloop                   blend                   doubleweave             hstack                  pad                     showwaves               vignette
alphaextract            bm3d                    drawbox                 hue                     pal100bars              showwavespic            vmafmotion
alphamerge              bwdif                   drawgraph               hwdownload              pal75bars               shuffleframes           volume
amerge                  cellauto                drawgrid                hwmap                   palettegen              shuffleplanes           volumedetect
ametadata               channelmap              drmeter                 hwupload                paletteuse              sidechaincompress       vstack
amix                    channelsplit            dynaudnorm              hysteresis              pan                     sidechaingate           w3fdif
amovie                  chorus                  earwax                  idet                    perms                   sidedata                waveform
amplify                 chromahold              ebur128                 il                      pixdesctest             signalstats             weave
amultiply               chromakey               edgedetect              inflate                 pixscope                silencedetect           xbr
anequalizer             chromashift             elbg                    interleave              premultiply             silenceremove           xmedian
anlmdn                  ciescope                entropy                 join                    prewitt                 sinc                    xstack
anoisesrc               codecview               equalizer               lagfun                  pseudocolor             sine                    yadif
anull                   color                   erosion                 lenscorrection          psnr                    smptebars               yuvtestsrc
anullsink               colorbalance            extractplanes           life                    qp                      smptehdbars             zoompan

Enabled bsfs:
aac_adtstoasc           dump_extradata          h264_mp4toannexb        imx_dump_header         mpeg2_metadata          remove_extradata        vp9_raw_reorder
av1_frame_split         eac3_core               h264_redundant_pps      mjpeg2jpeg              mpeg4_unpack_bframes    text2movsub             vp9_superframe
av1_metadata            extract_extradata       hapqa_extract           mjpega_dump_header      noise                   trace_headers           vp9_superframe_split
chomp                   filter_units            hevc_metadata           mov2textsub             null                    truehd_core
dca_core                h264_metadata           hevc_mp4toannexb        mp3_header_decompress   prores_metadata         vp9_metadata

Enabled indevs:
alsa                    fbdev                   lavfi                   oss                     v4l2                    xcbgrab

Enabled outdevs:
alsa                    fbdev                   oss                     v4l2

License: LGPL version 2.1 or later

 make
GEN     libavutil/libavutil.version
GEN     libswscale/libswscale.version
GEN     libswresample/libswresample.version
GEN     libavcodec/libavcodec.version
GEN     libavformat/libavformat.version
GEN     libavfilter/libavfilter.version
GEN     libavdevice/libavdevice.version
CC      libavdevice/alldevices.o
CC      libavdevice/alsa.o
CC      libavdevice/alsa_dec.o
CC      libavdevice/alsa_enc.o
CC      libavdevice/avdevice.o
libavdevice/avdevice.c: In function ‘device_next’:
libavdevice/avdevice.c:88:13: warning: ‘av_oformat_next’ is deprecated [-Wdeprecated-declarations]
             if (!(prev = av_oformat_next(prev)))
             ^~
In file included from libavdevice/avdevice.h:51:0,
                 from libavdevice/avdevice.c:23:
./libavformat/avformat.h:2095:17: note: declared here
 AVOutputFormat *av_oformat_next(const AVOutputFormat *f);
                 ^~~~~~~~~~~~~~~
libavdevice/avdevice.c:92:13: warning: ‘av_iformat_next’ is deprecated [-Wdeprecated-declarations]
             if (!(prev = av_iformat_next(prev)))
             ^~
In file included from libavdevice/avdevice.h:51:0,
                 from libavdevice/avdevice.c:23:
./libavformat/avformat.h:2087:17: note: declared here
 AVInputFormat  *av_iformat_next(const AVInputFormat  *f);
                 ^~~~~~~~~~~~~~~
CC      libavdevice/fbdev_common.o
CC      libavdevice/fbdev_dec.o
CC      libavdevice/fbdev_enc.o
CC      libavdevice/lavfi.o
CC      libavdevice/oss.o
CC      libavdevice/oss_dec.o
CC      libavdevice/oss_enc.o
CC      libavdevice/timefilter.o
CC      libavdevice/utils.o
CC      libavdevice/v4l2-common.o
CC      libavdevice/v4l2.o
In file included from libavdevice/v4l2.c:39:0:
/usr/src/jetson_multimedia_api/include/libv4l2.h:30:5: warning: "HAVE_VISIBILITY" is not defined, evaluates to 0 [-Wundef]
 #if HAVE_VISIBILITY
     ^~~~~~~~~~~~~~~
libavdevice/v4l2.c: In function ‘v4l2_get_device_list’:
libavdevice/v4l2.c:1054:58: warning: ‘%s’ directive output may be trunc


fftools/ffprobe.c:2576:13: warning: ‘timecode_frame_start’ is deprecated [-Wdeprecated-declarations]
             av_timecode_make_mpeg_tc_string(tcbuf, dec_ctx->timecode_frame_start);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ./libavformat/avformat.h:317:0,
                 from fftools/ffprobe.c:31:
./libavcodec/avcodec.h:2527:13: note: declared here
     int64_t timecode_frame_start;
             ^~~~~~~~~~~~~~~~~~~~
fftools/ffprobe.c:2640:5: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
     if (stream->codec->rc_max_rate > 0) print_val ("max_bit_rate", stream->codec->rc_max_rate, unit_bit_per_second_str);
     ^~
In file included from fftools/ffprobe.c:31:0:
./libavformat/avformat.h:885:21: note: declared here
     AVCodecContext *codec;
                     ^~~~~
fftools/ffprobe.c:1822:12: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
     struct unit_value uv;                                           \
            ^
fftools/ffprobe.c:2640:41: note: in expansion of macro ‘print_val’
     if (stream->codec->rc_max_rate > 0) print_val ("max_bit_rate", stream->codec->rc_max_rate, unit_bit_per_second_str);
                                         ^~~~~~~~~
In file included from fftools/ffprobe.c:31:0:
./libavformat/avformat.h:885:21: note: declared here
     AVCodecContext *codec;
                     ^~~~~
fftools/ffprobe.c: In function ‘open_input_file’:
fftools/ffprobe.c:2933:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
             ist->dec_ctx->coded_width = stream->codec->coded_width;
             ^~~
In file included from fftools/ffprobe.c:31:0:
./libavformat/avformat.h:885:21: note: declared here
     AVCodecContext *codec;
                     ^~~~~
fftools/ffprobe.c:2934:13: warning: ‘codec’ is deprecated [-Wdeprecated-declarations]
             ist->dec_ctx->coded_height = stream->codec->coded_height;
             ^~~
In file included from fftools/ffprobe.c:31:0:
./libavformat/avformat.h:885:21: note: declared here
     AVCodecContext *codec;
                     ^~~~~
LD      ffprobe_g
STRIP   ffprobe

编译完了那就解码试试看看结果

ljx@ljx-desktop:~/ffmpeg-4.2.7$ ./ffmpeg -c:v h264_nvv4l2dec -i /opt/nvidia/deepstream/deepstream-6.0/samples/streams/sample_720p.mp4 -f null -
nvbuf_utils: Could not get EGL display connection
ffmpeg version 4.2.7 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 7 (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04)
  configuration: --enable-nvv4l2dec --enable-libv4l2 --extra-libs='-L/usr/lib/aarch64-linux-gnu/tegra -lnvbuf_utils' --extra-cflags='-I /usr/src/jetson_multimedia_api/include/'
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/opt/nvidia/deepstream/deepstream-6.0/samples/streams/sample_720p.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.83.100
  Duration: 00:00:48.07, start: 0.000000, bitrate: 2592 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 2455 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_nvv4l2dec) -> wrapped_avframe (native))
  Stream #0:1 -> #0:1 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, null, to 'pipe:':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
    Stream #0:0(eng): Video: wrapped_avframe, yuv420p, 1280x720, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc58.54.100 wrapped_avframe
    Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      encoder         : Lavc58.54.100 pcm_s16le
frame= 1438 fps=301 q=-0.0 Lsize=N/A time=00:00:47.97 bitrate=N/A speed=10.1x
video:753kB audio:8996kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

 

 收工

 

你可能感兴趣的:(嵌入式,Jetson,nano,linux,视频编解码)