Jetson Xavier error decoding H264 stream with nvv4l2decoder: NvMediaParserParse Unsupported Codec

Hello

I’m working with a Jetson Xavier NX, Jetpack 35.2.1.

I’m trying to receive a video stream, compressed with H264, and show it in the screen. If I produce the video with the Nvidia H264 encoder:

gst-launch-1.0 videotestsrc ! nvvidconv ! 'video/x-raw(memory:NVMM), format=NV12, width=1920, height=1080' ! nvv4l2h264enc insert-sps-pps=true ! h264parse ! rtph264pay pt=96 ! udpsink host=192.168.1.53 port=1234 sync=false

I can correctly open and show it:

gst-launch-1.0 udpsrc port=1234 caps='application/x-rtp, encoding-name=(string)H264, payload=(int)96' ! rtph264depay ! queue ! nvv4l2decoder ! nvvidconv ! videoconvert ! autovideosink

However, if I compress the video using, for instance, the software encoder x264enc:

gst-launch-1.0 videotestsrc ! videoconvert ! x264enc ! h264parse ! rtph264pay pt=96 ! udpsink host=192.168.1.53 port=1234 sync=fals

I get the following error:

Setting pipeline to PAUSED ...
Opening in BLOCKING MODE 
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
NvMMLiteOpen : Block : BlockType = 261 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 261 
NVMEDIA: NvMMLiteNVMEDIAProcessVES: 1824: NvMediaParserParse Unsupported Codec 
Stream format not found, dropping the frame
Stream format not found, dropping the frame
Stream format not found, dropping the frame
NVMEDIA: NvMMLiteNVMEDIADecDoWork: 2228: NVMEDIA Video Dec Unsupported Stream 
ERROR: from element /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0: Failed to process frame.
Additional debug info:
/dvs/git/dirty/git-master_linux/3rdparty/gst/gst-v4l2/gst-v4l2/gstv4l2videodec.c(1804): gst_v4l2_video_dec_handle_frame (): /GstPipeline:pipeline0/nvv4l2decoder:nvv4l2decoder0:
Maybe be due to not enough memory or failing driver
Execution ended after 0:00:03.604760601
Setting pipeline to NULL ...
NVMEDIA: NvMMLiteNVMEDIAProcessVES: 1824: NvMediaParserParse Unsupported Codec 
NVMEDIA: NvMMLiteNVMEDIADecDoWork: 2228: NVMEDIA Video Dec Unsupported Stream 
NVMEDIA: NvMMLiteNVMEDIAProcessVES: 1824: NvMediaParserParse Unsupported Codec 
NVMEDIA: NvMMLiteNVMEDIAProcessVES: 1824: NvMediaParserParse Unsupported Codec 
Freeing pipeline ...

What am I doing wrong? Is there something missing?

Thanks in advance

Hi,
Please add h264parse and see if it works:

... ! rtph264depay ! h264parse ! nvv4l2decoder ! ...

Hello DaneLLL,

adding h264parse does not solve it, but forcing I420 format before the encoder does.

Thanks!

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.