GNOME Bugzilla – Bug 596849
gnlcomposition: Allow low-memory usage
Last modified: 2014-09-24 08:39:05 UTC
Currently objects being used in the composition are brought to PLAYING/PAUSED when used for the first time, and then frozen in that state after they're no longer used. We need a mode in GnlComposition that would allow unused objects to be set back to NULL/READY when they're no longer use (and reduce the memory usage as a side effect).
Blocks pitivi "High memory usage" bug
I can confirm the issue, my GNL pipeline reaches 700 MB just after playing 18 videos.
This is still the case in gnonlin 1.0 fwiw
Created attachment 277123 [details] [review] composition: Add a property defining deactivated elements state In the composition many elements are not used, until now, they were always set to the PAUSED state though it makes sense to be able to do gapless playback it is sometimes not ideal to preserve memory usage and it means the more children the composition has the more threads are used and it is very simple to reach the kernel hard limit number of threads. In order to avoid that to happen, we set default state of unused thread to READY and we add a property to the composition so that users can override that default behaviour. + Make sure we send "stream-start" again when changing our ghostpad to avoid "Data flow before stream-start assertion" + Fix unit tests, do not check refcount when changing state as it can vary.
Attachment 277123 [details] pushed as b393729 - composition: Add a property defining deactivated elements state