Problem with udpsrc in gst-rtsp-server

Marco Ballesio gibrovacco at gmail.com
Fri Mar 4 00:20:13 PST 2011


Hi,

On Tue, Mar 1, 2011 at 3:24 PM, Morris Ford <morrishford at gmail.com> wrote:
> I get:
> (lt-test-launch:21084): GStreamer-CRITICAL **: gst_poll_set_flushing:
> assertion `set != NULL' failed

Pretty strange. A very basic set of pipelines working on almost all
the gstreamer powered devices I've been hacking with so far:

gst-launch videotestsrc ! x264enc ! rtph264pay ! udpsink
host=127.0.0.1 port=1234

gst-launch udpsrc port=1234 ! "application/x-rtp, payload=96" !
rtph264depay ! ffdec_h264 ! xvimagesink sync=false

Just replace encoder, decoder and video sink with whatever your
platform provides.

I haven't been able to retrieve the "test-launch" sources. As in all
the commands you're posted so far there are no hints about sink
elements, I'm beginning to suspect it's using its own logic to handle
the depayloaded buffers (maybe an appsink). Have you tried to check
whether the buffering is actually occurring there?

Regards

>
> Morris
> On Tue, Mar 1, 2011 at 3:11 AM, Marco Ballesio <gibrovacco at gmail.com> wrote:
>>
>> Hi,
>>
>> On Mon, Feb 28, 2011 at 6:14 PM, Morris Ford <morrishford at gmail.com>
>> wrote:
>> > Thanks a lot for your help. That was the key to getting it to run. I now
>> > have a working rtsp-server pipe thus:
>> > ./test-launch "( udpsrc port=5000 caps=\"application/x-rtp,
>> > media=\(string\)video, clock-rate=\(int\)90000,
>> > encoding-name=\(string\)H264,  payload=\(int\)96,
>> > ssrc=\(guint\)2396357661,
>> > clock-base=\(guint\)2297066863, seqnum-base=\(guint\)49439\" !
>> > rtph264depay
>> > ! ffdec_h264 ! ffmpegcolorspace ! videoscale ! x264enc ! rtph264pay
>> > name=pay0 pt=96 sync=false )"
>> > Problem now is that there is a 3 - 4 second latency when playing using
>> > that
>> > pipeline and playing the resulting video through vlc or quicktime.
>> > My question: How do I find what is causing the delay and what can I do
>> > to
>> > reduce the delay?
>>
>> what if you don't explicitly set clock-base and seqnum-base?
>>
>> Regards
>>
>> > Thanks
>> > Morris
>> >
>> > On Mon, Feb 28, 2011 at 2:33 AM, Marco Ballesio <gibrovacco at gmail.com>
>> > wrote:
>> >>
>> >> Hi,
>> >>
>> >> On Mon, Feb 28, 2011 at 3:05 AM, Morris Ford <morrishford at gmail.com>
>> >> wrote:
>> >> > I am working on receiving an udpsrc stream and publishing it as an
>> >> > rtsp
>> >> > stream. This gst-launch string works just fine to receive the stream:
>> >> > gst-launch-0.10 -v udpsrc port=5000 caps="application/x-rtp,
>> >> > media=\(string\)video, clock-rate=\(int\)90000,
>> >> > encoding-name=\(string\)H264,  payload=\(int\)96,
>> >> > ssrc=\(guint\)2396357661,
>> >> > clock-base=\(guint\)2297066863, seqnum-base=\(guint\)49439" !
>> >> > rtph264depay !
>> >> > decodebin ! ffmpegcolorspace ! videoscale ! xvimagesink sync=false
>> >> > but when I try to take that pipeline and put it into a test-launch, I
>> >> > get
>> >> > complaints about not being able to set the caps on udpsrc to
>> >> > application/x-rtp.
>> >> > Like this:
>> >> > ./test-launch "( udpsrc port=5000 caps="application/x-rtp,
>> >> > media=\(string\)video, clock-rate=\(int\)90000,
>> >>
>> >> It's just about bash syntax. The way you're using the " make bash
>> >> thinking you're passing test-launch a first argument like this:
>> >>
>> >> ( udpsrc port=5000 caps=
>> >>
>> >> concatenated to:
>> >>
>> >> application/x-rtp,
>> >>
>> >> and a second argument like:
>> >>
>> >> media=\(string\)video,
>> >>
>> >> useless to say this is not what you should pass to the test-launch
>> >> command. I suggest you to try replacing the outmost pair of " with '
>> >> or the innermost ones with \"
>> >>
>> >> Regards
>> >>
>> >> > encoding-name=\(string\)H264,  payload=\(int\)96,
>> >> > ssrc=\(guint\)2396357661,
>> >> > clock-base=\(guint\)2297066863, seqnum-base=\(guint\)49439" !
>> >> > rtph264depay !
>> >> > decodebin ! ffmpegcolorspace ! videoscale ! x264enc ! rtph264pay
>> >> > name-pay0
>> >> > pt=96 )"
>> >> > ** (lt-test-launch:20772): CRITICAL **: could not parse launch syntax
>> >> > ((
>> >> > udpsrc port=5000 caps=application/x-rtp,): could not set property
>> >> > "caps"
>> >> > in
>> >> > element "udpsrc0" to "application/x-rtp,"
>> >> > ** (lt-test-launch:20772): CRITICAL **: could not create element
>> >> > I could not find any examples of udpsrc in a test-launch line or
>> >> > udpsrc
>> >> > in a
>> >> > gst-rtsp-server 'c' program so I am not at all sure if what I am
>> >> > trying
>> >> > to
>> >> > do is valid.
>> >> > Morris
>> >> > _______________________________________________
>> >> > gstreamer-devel mailing list
>> >> > gstreamer-devel at lists.freedesktop.org
>> >> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >> >
>> >> >
>> >> _______________________________________________
>> >> gstreamer-devel mailing list
>> >> gstreamer-devel at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> > _______________________________________________
>> > gstreamer-devel mailing list
>> > gstreamer-devel at lists.freedesktop.org
>> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> >
>> >
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>


More information about the gstreamer-devel mailing list