Hi there!

I just came back from a break from Liquidsoap activities and realized I
never sent a proper announcement for the 1.3.4 release..

Liquidsoap 1.3.4 was released this past September. It was the result of a
months long process of featuring adding but, mostly bug fixing.

I want to send a special thank you note to all our users who have worked
through their submitted issues, patiently responding and testing
development code. This is highly appreciated, we could not ship such a good
release without this precious help. Also, it is always great to see a
community using the software.

New features in this release include a decoder based on the ffmpeg library,
not the external decoder based on the binary. It should prove helpful to
support the plethora of format that ffmpeg can decode though it only
decodes audio for now. In the future, we'll be looking at a similar ffmpeg
encoder and, of course, to support video.

It always amazes me to see all the feedback we get about video support. In
particular, gstreamer support has been known to be a big pain for a lot of
users interested in video streaming. The good news with this release is
that, thanks again to a couple of very patient users, it seems that the
gstreamer support is fully functional and stable!

A little gotcha on this, though: the new `output.youtube.live` had a minor
issue in release 1.3.4. But, fear not, you can grab a fixed script code
here:
https://github.com/savonet/liquidsoap/blob/master/scripts/gstreamer.liq#L68

Another great news is that the Debian package has a new maintainer! 1.3.3
was uploaded recently and, hopefully, 1.3.4 will make it soon. Big thank
you Kyle Robbertze for taking care of that. It's no small feat to have to
update all of liquidsoap dependencies and we know very well that this has
been a big sticking point for a lot of y'all.

Also on the build side, the windows build are back again! Thanks to the
awesome opam-windows project, the build is now fully automated through
docker. This should provide long time support for it and allow to move away
from the rather artisanal way the build used to be executed..

Beside these big points, there are a ton of bug fixes in that release. I
believe that this is one of the best we've had recently.

In the future, I plan on keeping track on bugs showing up -- there's
already a fixed one in ocaml-duppy pending a release, which will be pushed
soon. New features are always welcome but a concerted effort to consolidate
the existing codebase if what seems to be the most needed at the moment.

We're also hoping to modernize a little bit the project. It would be nice
to revamp the website, if any of y'all is interested to step in for it.
Likewise, I see users mention a slack channel. I wouldn't personally
participate, for lack of time, but we'd be happy to add one such channel to
the website if the community wants to create one.

Finally, the project is always looking for new developers. This is the most
threatening part moving forward. To that end, Gilou (Gilles  Pietry)
recently offered to spearhead a liquidsoap consulting idea. I support it
wholeheartedly.

Although liquidsoap will always be free to use and modify, we know that
some of y'all are depending on it for time-critical applications. For these
cases, a consulting operation should provide a better, more timely support
and, hopefully, attract new developers as well. We shall be back with more
concrete things about this soon.

Before I close out with the full changelog for this release, I want, again
to thank you all for using, contributing and being patient with us. It is
amazing to see the liquidsoap/savonet project after all these years still
finding new group and being used in all y'all projects!

On to the next release!
Romain

1.3.4 Changelog:

New:
* Added FFMPEG decoder using the new ocaml-ffmpeg API. Thanks for @gndl for
the hard work there.
* Added "init.allow_root" setting to allow running liquidsoap as root.
* Added on_track callback for playlists. Can be used to force a reload.
* Added server.condition, server.wait, server.broadcast and server.signal.
Used to control server command execution.
* Added server.write, server.read{chars,line} to write interactive server
commands in conjunction with the above functions. (#544, #568)
* Added output.youtube.live as a wrapper around
output.gstreamer.audio_video to stream live to Youtube (#498)
* Added metadata extraction to ffmpeg2wav protocol (#623).

Changed:
* Depends on OCaml >= 4.03.0
* Depends on camomile > 1.0.0
* Use http{s}.head when available to fetch remote file's mime type. (win32
port)
* Better log messages for root exit and buffer override.
* Switch default log to stdout. Set to file when log.file.path is set (#612)
* Disabled Gstreamer stream decoder.
* Removed asynchronous mode for output.gstreamer.audio_video
* Reworked smartcross internal logic (#596)
* Enabled replaygain on m4a files, thanks to @gilou (#604)
* Added encoding parameter to output.shoutcast to allow alternative string
encoding for metadata updates (#411)
* Deprecated rewrite_metadata

Fixed:
* Decouple dyntools compilation.
* Support for OCaml >= 4.06
* File descriptor leak in output.icecast (#548)
* Fixed URL regexp for input.https (#593)
* Multiple gstreamer fixes:
* File decoder with video.
* Memory leaks (#516, #511, #434, #318)
* Process freeze (#608, #278)
* Duppy crash on exit (#160)
* Fixed audio glitches when using the pipe operator (#614)
* Deadlock in external decoder. (#611)
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to