[gst-devel] merging elements in plugins

Ronald S. Bultje rbultje at ronald.bitfreak.net
Tue Apr 12 11:06:22 CEST 2005


[Thomas: please use reply-to-list]

On Mon, 2005-04-11 at 19:22, Thomas Vander Stichele wrote:
[.."plugins are slow"..]
> Again, *show* that this is the cause.  *show* me that in the case of
> Totem, the 10 .so files of GStreamer plugins that it opens is slow, and
> changing that number to 6 (in your proposal) is noticeably faster, and
> does not pale in comparison to all the other stuff totem is doing at
> that point.

Like I said, I was talking about another app (non-graphical).

Attached speed.c tests local plugins (which is the same as having
multiple elements in one plugin; essentially that means having all those
elements local in the plugin).

Quick output shows that plugin loading of only 3 elements takes
0.15-0.20s, whereas having them local takes 0.02-0.05s. This tells me
that for every loaded element that does not need a separate plugin, we
save (0.18 - 0.04) / 3 = ~0.05s, so putting
audioconvert/audioscale/volume in the same plugin and doing the same for
ffmpegcolorspace/videoscale (which are some of what I proposed) would
save the 0.14s. Maybe there's more possible.

Worth it? Maybe. The thing is, it's effortless (it's a simple
Makefile.am change), so why not?


PS and yes, I will want to make Totem faster, too. And I will.

Ronald S. Bultje <rbultje at ronald.bitfreak.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: speed.c
Type: text/x-csrc
Size: 5244 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20050412/33a3a60f/attachment.c>

More information about the gstreamer-devel mailing list