Hi all!

Liquidsoap 2.0.4 is out!

Release 2.0.4 is mostly focused on CPU and memory optimization. As 2.0.x
was getting adopted, we started receiving reports of increased CPU and
memory usage compared to 1.4.4. We investigated them and found a couple of
places that needed to be optimized:

* Our new media content API, which was extended to support the new ffmpeg
raw and encoded data, was accessing content in a way that was not optimal
* Our internal format for PCM audio content had been switched from OCaml
native float array to Bigarrays holding C arrays of floats. However,
performances when accessing Bigarray float data in our audio filters
written in OCaml were problematic.

These two issues have been fixed and we've been able to observe
performances on-par with liquidsoap 1.4.4 for this release.

These improvements are particularly relevant if:
* Your liquidsoap script is using a lof of internal filters and audio
processing operators.
* Your liquidsoap is handling multiple stream/inputs/outputs.

The other breaking change for this release is related to source shutdown
methods. We realized that only specific sources (outputs and active
sources) should have a shutdown method so we removed it from the other
ones. Sources without a shutdown method are cleaned up when all the sources
depending on them have been shutdown.

While this release should be, for the most part, functionally equivalent to
any previous 2.0.x release, we recommend trying it in a staging environment
prior to deploying it to production. The changes for the underlying audio
format were pretty invasive and, also, there is always the chance that your
setup was relying on an incorrect behavior fixed in the release.

Full changelog and release details are here:
https://github.com/savonet/liquidsoap/releases/tag/v2.0.4

-- Romain & Sam
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to