Cannot decode stream encoded with nvv4l2h264enc using nvv4l2decoder

Hello,

I am trying to put together a pipeline in which a source gets encoded as h264 and immediately gets decoded. However, I cannot get nvv4l2h264enc and nvv4l2decoder to work together like nvv4l2h264enc ! h264parse ! nvv4l2decoder in a single pipeline.

The following works for generating a test pattern:

gst-launch-1.0 videotestsrc pattern=ball num-buffers=200 ! 'video/x-raw,format=UYVY,width=1280,height=720' ! nvvidconv ! 'video/x-raw(memory:NVMM),width=1280,height=720,framerate=10/1,format=UYVY' ! nvvidconv ! nvv4l2h264enc ! h264parse ! video/x-h264,stream-format=byte-stream ! filesink location=ball.h264

I can decode the file with a command like:

gst-launch-1.0 filesrc location=ball.h264 ! h264parse ! nvv4l2decoder ! nvvidconv ! xvimagesink

However, when I chain the two pipelines together like so, nothing happens:

gst-launch-1.0 videotestsrc pattern=ball num-buffers=200 ! 'video/x-raw,format=UYVY,width=1280,height=720' ! nvvidconv ! 'video/x-raw(memory:NVMM),width=1280,height=720,framerate=10/1,format=UYVY' ! nvvidconv ! nvv4l2h264enc ! h264parse ! nvv4l2decoder ! nvvidconv ! xvimagesink

I would have expected to see a similar output to what gets displayed with:

gst-launch-1.0 videotestsrc pattern=ball num-buffers=200 ! 'video/x-raw,format=UYVY,width=1280,height=720' ! nvvidconv ! xvimagesink

However, nothing happens.

gst-launch-1.0 --version reports gst-launch-1.0 version 1.16.3, GStreamer 1.16.3.

I’d appreciate any suggestions on how to address this issue.

Hi,
Please add queue plugin and give it a try:

... ! nvv4l2h264enc ! queue ! h264parse ! nvv4l2decoder ! ...

Unfortunately, I observe the same behavior with the addition of a queue (before or after h264parse, or both).