Я пытаюсь передать видео с h264. Источник - это камера Axis. Мне удалось передать jpeg с помощью многоадресной рассылки, но не h264.Как передать h264 с udp gstreamer
С JPEG Я использовал следующую команду:
gst-launch-1.0 udpsrc uri=udp://239.194.0.177:1026 ! application/x-rtp,encoding-name=JPEG,payload=26 ! rtpjpegdepay ! jpegdec ! autovideosink
Я попытался поток h264, но это не удается, используется следующая команда:
gst-launch-1.0 -v udpsrc host=239.194.0.177 port=1026 ! rtph264depay ! ffdec_h264 ! xvimagesink
Я получаю следующее сообщение об ошибке:
ERROR: pipeline could not be constructed: no element "udpsrc".
С этой строкой:
gst-launch-1.0 udpsrc uri=udp://239.194.0.177:1026 ! application/x-rtp,media=video,clock-rate=90000,encoding-name=H264 ! rtph264depay ! h264parse
я не получил каких-либо ошибок, но видео не текли, и это было напечатано в терминале:
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Я попытался команды из следующих страниц:
Stream H.264 video over rtp using gstreamer
https://developer.ridgerun.com/wiki/index.php/Using_UDP_Multicast_with_GStreamer
http://labs.isee.biz/index.php/Example_GStreamer_Pipelines#H.264_RTP_Streaming
Но он не мог заставить его работать.
При работе в режиме verbos я получаю дополнительную информацию.
Команда:
gst-launch-1.0 -v udpsrc uri=udp://239.194.0.177:1026 ! application/x-rtp, media=video, payload=96, encoding-name=H264 ! rtph264depay ! avdec_h264 ! videoconvert ! fakesink
Выход:
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = "application/x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ encoding-name\=\(string\)H264\,\ clock-rate\=\(int\)90000"
/GstPipeline:pipeline0/GstRtpH264Depay:rtph264depay0.GstPad:sink: caps = "application/x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ encoding-name\=\(string\)H264\,\ clock-rate\=\(int\)90000"
Как поток H264 с помощью многоадресной рассылки с GStreamer?
попробовать сделать это в расширенном режиме с -v GST-старта -1.0 udpsrc uri = udp: //239.194.0.177: 1026! application/x-rtp, media = video, clock-rate = 90000, encoding-name = H264! rtph264depay! h264parse! fakesink - Попробуйте добавить fakesink после каждого элемента в конвейере, чтобы определить, какой элемент вызывает проблему. –