Missing omxh264enc on ubuntu 18.04 after installation

I’m trying to get a h264 stream decode by gstreamer on ubuntu 18.04 but i missing the omxh264dec plugin. I have installed all the gstreamer packages.

gst-launch-1.0  udpsrc uri=udp://238.0.0.1:1234 ! typefind ! tsdemux ! multiqueue ! h264parse ! omxh264dec ! autovideosink
WARNING: erroneous pipeline: no element "omxh264dec"

Install the driver

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install ubuntu-drivers-common
sudo ubuntu-drivers autoinstall
sudo apt-get install ubuntu-restricted-extras

Install gstreamer

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

Looking for the omx plugins

gst-inspect-1.0 | grep omx
libav:  avenc_h264_omx: libav OpenMAX IL H.264 video encoder encoder

nvidia-bug-report.log.gz (99.4 KB)

If you want gst-omx, you’ll have to install the packages
[url]Ubuntu – Error

I do not get gst-omx installed. I have installed the related packages but this makes no difference.

$ sudo apt-get install gst-omx
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package gst-omx
$ sudo apt-get install gst-omx-listcomponents gstreamer1.0-omx-bellagio-config gstreamer1.0-omx-generic gstreamer1.0-omx-generic-config
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gst-omx-listcomponents is already the newest version (1.12.4-1).
gstreamer1.0-omx-bellagio-config is already the newest version (1.12.4-1).
gstreamer1.0-omx-generic is already the newest version (1.12.4-1).
gstreamer1.0-omx-generic-config is already the newest version (1.12.4-1).
The following package was automatically installed and is no longer required:
  libnfs8
Use 'sudo apt autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.

My goal is to do the h264 encoding on the Quadro M2000.

Ok, wrong system. AFAIK, omx with nvidia is only provided for their ARM based chips. With x86 desktop boards you’ll have to use either vdpau or nvenc.

I have installed the vdapau driver and the gstreamer vaapi, but I can’t find any vaapi plugin.

sudo apt-get install gstreamer1.0-vaapi
sudo apt-get install vdpau-va-driver vainfo
$ DISPLAY=:0 vainfo 
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
libva info: Found init function __vaDriverInit_1_0
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.1 (libva 2.1.0)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG4Simple            :	VAEntrypointVLD
      VAProfileMPEG4AdvancedSimple    :	VAEntrypointVLD
      <unknown profile>               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
$ gst-inspect-1.0 | grep vaa

This has no results.

How do I use/install the vdpau or nvdec in gstreamer?

Found same problem on my end when I running for Jetson NX or AGX with Jetpack 4.5.1. But I does not see the issues when I run on Jetpack 4.6, is it the version compatible issues?