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.