Sign up ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

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

1 Answer 1

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

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.