2016-09-16 4 views
1

Я пытаюсь передать видео с 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?

+0

попробовать сделать это в расширенном режиме с -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 после каждого элемента в конвейере, чтобы определить, какой элемент вызывает проблему. –

ответ

1

Слишком долго для комментариев - и с тех пор никто не отвечает на размещение этого проекта мыслей как ответ ..

Первая ошибка о не элемент udpsrc действительно странно. Но я думаю, что он жаловался на отсутствие параметра uri. Какую версию ты используешь? У меня нет параметра хоста для udpsrc.

В третьем конвейере он заканчивается h264parse - это опечатка? вам нужно декодировать h264 .. не только разобрать его:

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 ! avdec_h264 ! videoconvert ! autovideosink 

добавить также некоторые журналы (возможно с Pastebin, если слишком долго) с проточной GST_DEBUG=3 gst-launch-1.0 .... или так.

Что это значит:

But could not get it to work

Это не говорит слишком много;)

Обычно при работе с РПТ необходимо предоставить действительно все возможности в противном случае он не может связать или играть. .

Возможно, попробуйте с uridecodebin?Не уверен, если это лучшая идея:

gst-launch-1.0 uridecodebin uri = udp: // etcetc: port! видеоконвертер! autovideosink

Если вы получаете какие-либо новые Infos/вопросы добавить их в качестве обновления, чтобы сделать изображение целиком (и для других ..)

НТН

+0

Пробовал вашу команду, но поток не был открыт, такое же сообщение, как и раньше, т.е. ничего не происходит после новых часов: GstSystemClock и никаких ошибок. Также попробовал добавить fakesink после каждого элемента, но ничего не получил. Кажется, что нет ничего плохого в командах, но по какой-то причине окно, содержащее поток, открывается h264. Я дважды проверил, что камера отправляет многоадресную рассылку с h264 и прокладывает сеть, чтобы проверить, действительно ли отправлены пакеты. Поэтому я теперь отправляю пакеты. Также не было добавлено никакой дополнительной информации при использовании GST_DEBUG = 3. – S4M1R

+0

Я бы хотел увидеть журналы .. возможно с = 4 уровень – nayana

+0

Вход с loglevel 4 https://drive.google.com/open?id=0B-lpWopRD2DXdVRRSEs1cW1DNkk – S4M1R

Смежные вопросы