about GStreamer performance problem

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

about GStreamer performance problem

liangzhihong1984
I did such a test:
make an HDV camera connect to a PC, I call it PC1, and then streaming the mpeg2ts video data captured from this device with:
hdv1394src ! queue ! mpegtsparse ! rtpmp2tpay ! udpsink host=192.1681.100 port=500
and some other stuff, such as gstrtpbin  related.
and then I received the stream on PC2 use GStreamer pipeline first, and VLC to compare.
 
I found that GStreamer's performance is rather bad, the delay is more than 3 seconds, which of VLC is 1.2s.
 
Can anybody tell me why and how to improve it?
 
Thank you in advance.
 
Best Regards




网易邮箱,中国第一大电子邮件服务商

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: about GStreamer performance problem

michael smith-6-3
On 4/13/09, liangzhihong1984 <[hidden email]> wrote:

> I did such a test:
> make an HDV camera connect to a PC, I call it PC1, and then streaming the
> mpeg2ts video data captured from this device with:
> hdv1394src ! queue ! mpegtsparse ! rtpmp2tpay ! udpsink host=192.168.1.100
> port=500
> and some other stuff, such as gstrtpbin  related.
> and then I received the stream on PC2 use GStreamer pipeline first, and VLC
> to compare.
>
> I found that GStreamer's performance is rather bad, the delay is more than 3
> seconds, which of VLC is 1.2s.
>
> Can anybody tell me why and how to improve it?

Latency and performance are not the same thing.

GStreamer's performance is probably fine - you're just seeing higher
latency. There are lots of things you can do in gstreamer to decrease
this - but you didn't describe anything about your playback pipeline,
so I can't give much in the way of specific advice.

Some general things: decrease the latency on the jitter buffer. Also,
minimise the size of any queues.

Mike

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: about GStreamer performance problem

Marc Leeman
In reply to this post by liangzhihong1984
> I did such a test:
> make an HDV camera connect to a PC, I call it PC1, and then streaming the mpeg2ts video data captured from this device with:
> hdv1394src ! queue ! mpegtsparse ! rtpmp2tpay ! udpsink host=192.168.1.100 port=500
> and some other stuff, such as gstrtpbin  related.
> and then I received the stream on PC2 use GStreamer pipeline first, and VLC to compare.

Yeah,

just don't use gstrtpbin and use udpsrc, gstrtpjitter and gstptdemux
instead (a subset of udpsrc). I've written a bin that does this for this
problem with pretty good results.

gstrtpbin does way too much buffering with the default params; haven't
tested tweaking them.

The same is actually true for rtspsrc (which uses gstrtpbin).

> I found that GStreamer's performance is rather bad, the delay is more
> than 3 seconds, which of VLC is 1.2s.

gstrtpbin loads the CPU, that's right.

--
  greetz, marc
Torque is cheap.
crichton 2.6.26 #1 PREEMPT Tue Jul 29 21:17:59 CDT 2008 GNU/Linux

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

signature.asc (196 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: about GStreamer performance problem

Marc Leeman
In reply to this post by michael smith-6-3
> Latency and performance are not the same thing.

No they are not, but I would say that both are an issue with gstrtpbin.
Maybe tweaking the params would decrease latency *and* increase
performance.

--
  greetz, marc
I THINK MAN INVENTED THE CAR by instinct.
                -- Jack Handley, The New Mexican, 1988.
crichton 2.6.26 #1 PREEMPT Tue Jul 29 21:17:59 CDT 2008 GNU/Linux

------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

signature.asc (196 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: about GStreamer performance problem

Wim Taymans
In reply to this post by Marc Leeman
On Tue, 2009-04-14 at 09:54 +0200, Marc Leeman wrote:

> > I did such a test:
> > make an HDV camera connect to a PC, I call it PC1, and then streaming the mpeg2ts video data captured from this device with:
> > hdv1394src ! queue ! mpegtsparse ! rtpmp2tpay ! udpsink host=192.168.1.100 port=500
> > and some other stuff, such as gstrtpbin  related.
> > and then I received the stream on PC2 use GStreamer pipeline first, and VLC to compare.
>
> Yeah,
>
> just don't use gstrtpbin and use udpsrc, gstrtpjitter and gstptdemux
> instead (a subset of udpsrc). I've written a bin that does this for this
> problem with pretty good results.
>
> gstrtpbin does way too much buffering with the default params; haven't
> tested tweaking them.
>
> The same is actually true for rtspsrc (which uses gstrtpbin).
>
> > I found that GStreamer's performance is rather bad, the delay is more
> > than 3 seconds, which of VLC is 1.2s.
>
> gstrtpbin loads the CPU, that's right.

Would you care to back up this statement? which component is eating CPU?

Wim

>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by:
> High Quality Requirements in a Collaborative Environment.
> Download a free trial of Rational Requirements Composer Now!
> http://p.sf.net/sfu/www-ibm-com
> _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel