Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to get ip camera video stream by gstreamer:
gst-launch-1.0 rtspsrc location=rtsp://user:pass@ ! rtph264depay ! autovideosink

but get this error
Установка конвейера в состояние PAUSED…
Конвейер работает и не требует состояния PREROLL…
Установка конвейера в состояние PLAYING…
New clock: GstSystemClock
ОШИБКА: из элемента /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Internal data flow error.
Дополнительная отладочная информация:
gstrtspsrc.c(4206): gst_rtspsrc_loop (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
streaming task paused, reason not-negotiated (-4)
Execution ended after 54503440 ns.
Установка конвейера в состояние PAUSED...
Установка конвейера в состояние READY…
Установка конвейера в состояние NULL…
Освобождение конвейера…

i think this is a main proplem ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0: Internal data flow error.

my system is gentoo 3.5.7

share|improve this question

You've got wrong pipeline. The correct one is:

gst-launch-1.0 rtspsrc location=rtsp://user:pass@ ! rtph264depay ! h264parse ! decodebin ! autovideosink


gst-launch-1.0 rtspsrc location=rtsp://user:pass@ ! rtph264depay ! decodebin ! autovideosink

, as you need to decode the h264 stream before displaying it. Here are principial chains for media to use:

1) Decoding: encoded src -> demuxer -> decoder -> sink

2) Encoding: raw src(ie simple webcam) -> encoder -> muxer -> sink

Also, check the way to set up auth for rtspsrc. I'm not shure about this, but maybe the only correct one is: rtspsrc location=rtsp:// user-id=user user-pw=password

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .