avenc_h264_omx (gstreamer)

Хочу организовать стрим видео через gstreamer с видеокамеры, кодируя с помощью avenc_h264_omx, однако получаю ошибку.

Мой pipeline (STREAM): $ gst-launch-1.0 v4l2src device=/dev/video10 ! videoconvert ! avenc_h264_omx ! rtph264pay ! udpsink host=127.0.0.1 port=5606

Мой pipeLine (RECEIVE): $ gst-launch-1.0 udpsrc port=5606 buffer-size=90000 ! application/x-rtp ! rtph264depay ! avdec_h264 ! queue ! videoconvert ! autovideosink

Вывод об ошибке (STREAM):

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
gstbasesrc.c(3055): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Execution ended after 0:00:00.953476079
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

Я уже много времени потратил на решение проблемы, но, к сожалению, безуспешно. Может кто-то может помочь и объяснить в чем проблема? Спасибо!

P.S. Если я использую x264enc, то все работает Мой pipeline (STREAM): $ gst-launch-1.0 v4l2src device=/dev/video10 ! videoconvert ! x264enc tune=zerolatency speed-preset=superfast ! rtph264pay ! udpsink host=127.0.0.1 port=5606

Мой pipeLine (RECEIVE): $ gst-launch-1.0 udpsrc port=5606 buffer-size=90000 ! application/x-rtp ! rtph264depay ! avdec_h264 ! queue ! videoconvert ! autovideosink

Однако мне необходимо организовать работу с avenc_h264_omx.


Ответы (0 шт):