Error using omxh264dec instead of avdec_h264

Hello there,

I’m tying to capture and play an rtp stream using omxh264enc an omxh264dec. Here are my pipelines.

gst-launch-1.0 nvarguscamerasrc ! ‘video/x-raw(memory:NVMM), width=1280, height=720, framerate=60/1’ ! nvvidconv ! omxh264enc control-rate=0 ! video/x-h264, stream-format=byte-stream ! rtph264pay mtu=1400 ! udpsink host=localhost port=5000

Using avdec_h264 i have no problems, besides bad performance when the bitrate goes up.

gst-launch-1.0 udpsrc port=5000 ! application/x-rtp,encoding-name=H264,payload=96 ! rtph264depay ! h264parse ! queue ! avdec_h264 ! xvimagesink sync=true

If i try to use omxh264dec instead of avdec_h264 i got the following errors.

Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_caps_is_empty: assertion ‘GST_IS_CAPS (caps)’ failed

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_caps_truncate: assertion ‘GST_IS_CAPS (caps)’ failed

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_caps_fixate: assertion ‘GST_IS_CAPS (caps)’ failed

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_caps_get_structure: assertion ‘GST_IS_CAPS (caps)’ failed

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_structure_get_string: assertion ‘structure != NULL’ failed

(gst-launch-1.0:23369): GStreamer-CRITICAL **: 10:26:56.121: gst_mini_object_unref: assertion ‘mini_object != NULL’ failed
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
Allocating new output: 1280x720 (x 16), ThumbnailMode = 0
OPENMAX: HandleNewStreamFormat: 3605: Send OMX_EventPortSettingsChanged: nFrameWidth = 1280, nFrameHeight = 720
ERROR: from element /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0: Internal data stream error.
Additional debug info:
/dvs/git/dirty/git-master_linux/3rdparty/gst/gst-omx/omx/gstomxvideodec.c(3005): gst_omx_video_dec_loop (): /GstPipeline:pipeline0/GstOMXH264Dec-omxh264dec:omxh264dec-omxh264dec0:
stream stopped, reason not-negotiated
Execution ended after 0:00:00.237562919
Setting pipeline to PAUSED …
Setting pipeline to READY …
Setting pipeline to NULL …
Freeing pipeline …

I’m doing something wrong, that’s for sure.

Thanks in advance!

We have deprecated omx plugins. Please run with v4l2 plugins. And use nvoverlaysink or nv3dsink:

... ! nvv4l2decoder ! nvoverlaysink

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