Pipeline Optimization

Nicolas Dufresne nicolas at ndufresne.ca
Mon Apr 18 13:14:27 UTC 2022

Le dimanche 17 avril 2022 à 03:29 -0500, Matt Clark via gstreamer-devel a
écrit :
> I've gotten my project mostly to the stable point of working how I expect it,
> however I can't help but feel that it's nowhere near optimal. I have made it
> work and now I wish to make it right. Any insight be it pointers or
> instructions would be appreciated, as this is my first service/application
> using gstreamer and I'm still very green with it. 

Just notice from the graph one low hanging fruit. You have 3 color conversion
points, 1 before freeze, one after and one inside compositor. The output of
compositor is I420, you can greatly optimize your pipeline by adding a caps
filter to force conversion before the image freeze. This way, you convert the
input to I420 only once. Other similar optimization in relation to the usage of
imagefreeze could happen.

> The basic explanation of the system is that it queries a variable number of
> web endpoints for dynamically created pngs and then composes those together
> into an HLS stream that's then used by a single client. 
> Here is a PNG of the pipeline graph (I'll also attach the raw SVG as well in
> case you want to dig into it):
> debug_session.png
> TL;DR: Above is my pipeline, please help me make it the best it can be!
> Thanks to any and all in advance!
> -Matt

More information about the gstreamer-devel mailing list