Liquidsoap 1.3.0
New:
-
Added support for recursive functions (#406)
-
Add peak and peak.stereo operators (#364)
-
Change
track_sensitive
parameter to a boolean getter (fixed value or anonymous function). -
Add SSL support to the varous harbor operators, either via openssl or OSX's SecureTransport.
-
Add optional "dj" and "next" metadata for Shoutcast v2, wrap "dj" value in a callback in output.shoutcast (#370, #388)
-
Allow partial parsing of JSON objects in of_json.
-
Generalize list.assoc to allow default values. Legacy code must be updated: list.assoc(k,l) -> list.assoc(default="",k,l)
-
Generalize list.hd to allow default values. Legacy code must be updated: list.hd(l) -> list.hd(default="",l)
-
Allow to pass a default to list.nth. Legacy code must be updated: list.nth(l,pos) -> list.nth(default=<..>,l,pos)
-
Added on_offset to execute a callback at a given offset within a source's tracks.
-
Added mutexify to protect a function from being called concurrently.
-
Added request.log to get log data associated with a request
-
Added overlap_sources to rotate between sources with overlapping tracks.
-
Added replay_metadata to input.harbor()
-
Added <char code> syntax for strings (#368)
-
Added string.sub
-
Added run_process to run a process with optional environment and return (stdout,stderr,exit_status)
-
Added add_playlist_parser to register new playlist parsers
-
Added optional static parameter to add_protocol
-
Added file.temp to create fresh temporary filename
-
Added process: protocol
-
Reimplemented curl-based fetch process using process:
-
Added s3:// protocol to fetch files from AWS S3 using the AWS CLI.
-
Added polly: protocol to enable speech synthesis using AWS polly. Generated files are mono so make sure you use audio_to_stereo().
-
Added youtube-dl: protocol to resolved requests using youtube-dl
-
Added which() to find an exectuable within the $PATH
-
Added register() to allow to register new configuration settings
Changed:
-
Reverted default value for --error_as_warnings option, renamed to --strict.
-
Moved say: protocol registration to utils.liq.
-
Moved get_process_lines and get_process_output to utils.liq, added optional env parameter
-
Set conservative=true by default in cross() and smartcross()
Deprecated (can be removed in any future version):
- Dynamic plugins compilation, deprecated in favor of opam rebuild mechanism.
Removed:
-
aac and aacplus encoders, removed in favor of fdk-aac.
-
dirac/schroedinger video encoder: obsolete, abandoned upstream.
-
force_mpeg option in taglib metadata decoder. Has not been used for years and allows to decouple taglib code from the mad decoder.
Bugfixes:
-
Fix negative seek (#390)
-
Prevent flows metadata updata from stalling sources (#377)
-
Add revdns setting for telnet, set all revdns default to false (#372)
-
Fix icy metadata in output.harbor (#358)
-
Fix missing first line of headers from icy clients in input.harbor (#380)
-
Fix timestamp in some logged output (#395)
-
Fix crash in external (download) protocol.
-
Fix fade.{in,out} metadata handling for new fade duration and type.
-
Compute normalization regardless of child sources ready status in add() to avoid unexpected change of volume.