Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/main' into string-ba
Browse files Browse the repository at this point in the history
  • Loading branch information
toots committed Dec 23, 2023
2 parents 79c5607 + deffeda commit 0ffc471
Show file tree
Hide file tree
Showing 41 changed files with 590 additions and 153 deletions.
82 changes: 82 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,88 @@ Changed:
as expected.
- BREAKING: `replaygain` no longer takes `ebu_r128` parameter (#3438).
- BREAKING: assume `replaygain_track_gain` always stores volume in _dB_ (#3438).
- Added `parents` option of `file.mkdir` (#3600, #3601).

---

# 2.2.2 (2023-11-02)

New:

- Added `string.escape.html` (#3418, @ghostnumber7)
- Add support for getters in arguments of `blank.detect` (#3452).
- Allow float in source content type annotation so that it possible
to write: `source(audio=pcm(5.1))`

Changed:

- Trim urls in `input.ffmpeg` by default. Disable using
`trim_url=false` (#3424)
- Automatically add HLS-specific ffmpeg parameters to
`%ffmpeg` encoder (#3483)
- BREAKING: default `on_fail` removed on `playlist` (#3479)

Fixed:

- Allow `channel_layout` argument in ffmpeg encoder to set the
number of channels.
- Improved support for unitary minus, fix runtime call of optional
methods (#3498)
- Fixed `map.metadata` mutating existing metadata.
- Fixed reloading loop in playlists with invalid files (#3479)
- Fixed main HLS playlist codecs when using `mpegts` (#3483)
- Fixed pop/clicks in crossfade and source with caching (#3318)
- Fixed pop/clicks when resampling using `libsamplerate` (#3429)
- Fixed gstreamer compilation. Remember that gstreamer features are
DEPRECATED! (#3459)
- Fixed html character escaping in `interactive.harbor` (#3418, @ghostnumber7)
- Fixed icecast not reconnecting after erroring out while closing connection
in some circumstances (#3427)
- Fixed parse-only mode (#3423)
- Fixed ffmpeg decoding failing on files with unknown codecs.
- Fixed a crash due to `wait_until` timestamp being in the past when
using `posix-time2`
- Make sure that temporary files are always cleaned up in HLS outputs (#3493)

---

# 2.2.1 (2023-09-05)

Changed:

- BREAKING: on HLS outputs, `on_file_change` events are
now `"created"`, `"updated"` and `"deleted"`, to better
reflect the new atomic file operations (#3284)
- Added `compact` argument to the `http.response.json` function. `http.response.json` will produce minified JSON by
default. Added a newline symbol to the end of the JSON data produced by `http.response.json`. (#3299)
- Bumped internal ogg decoder to make sure that it is used over the ffmpeg decoder whenever possible.
FFmpeg has issues with metadata in chained streams which needs to be fixed upstream. Unfortunately,
`input.http` can only use the ffmpeg decoder at the moment.
- Cleanup `output.file` encoding and file handling logic (#3328)
- Added `ratio` to `source.{dump,drop}` to make it possible to control its CPU peaks.
- Enhanced clock error reporting (#3317)

Fixed:

- Fixed slow memory leak in muxer operator (#3372, #3181, #3334)
- Fixed discontinuity logic error in HLS outputs after a restart.
- Fixed HTTP response status in `output.harbor` (#3255)
- Make sure main HLS playlist is regenerated after being
unlinked (#3275)
- Fixed hard crash on icecast disconnection errors.
- Fix `output.harbor` encoder header when encoding with
`%ogg`, `%vorbis` and etc. (#3276)
- Fixed quality argument parsing in ffmpeg encoders (#3267)
- Make all HLS file write atomic (#3284)
- Allow seek and cue operators to work with muxed sources
using a single underlying source (#3252)
- Fixed export of cover art metadata (#3279)
- Remove use of `stereo:` protocol in `say:` protocol:
this is now handled automatically by the decoder and generates latency via
high CPU usage peak.
- Fixed `output.file` reopening with flac encoding (#3328)

---

# 2.2.0 (2023-07-21)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ See the instructions [here](https://www.liquidsoap.info/doc.html?path=install.ht
Current release status by version:
| Branch | Latest release | Supported | Rolling Release |
| --------|----------------|-----------|-----------------|
| `2.2.x` | [2.2.2](https://github.com/savonet/liquidsoap/releases/tag/v2.2.2) (docker: [savonet/liquidsoap:v2.2.2](https://hub.docker.com/r/savonet/liquidsoap))|| [2.2.x](https://github.com/savonet/liquidsoap/releases/tag/rolling-release-v2.2.x) (docker: [savonet/liquidsoap:rolling-release-v2.2.x](https://hub.docker.com/r/savonet/liquidsoap)) |
| `2.2.x` | [2.2.3](https://github.com/savonet/liquidsoap/releases/tag/v2.2.3) (docker: [savonet/liquidsoap:v2.2.3](https://hub.docker.com/r/savonet/liquidsoap))|| [2.2.x](https://github.com/savonet/liquidsoap/releases/tag/rolling-release-v2.2.x) (docker: [savonet/liquidsoap:rolling-release-v2.2.x](https://hub.docker.com/r/savonet/liquidsoap)) |
| `2.1.x` | [2.1.4](https://github.com/savonet/liquidsoap/releases/tag/v2.1.4) (docker: [savonet/liquidsoap:v2.1.4](https://hub.docker.com/r/savonet/liquidsoap))|| [2.1.x](https://github.com/savonet/liquidsoap/releases/tag/rolling-release-v2.1.x) (docker: [savonet/liquidsoap:rolling-release-v2.1.x](https://hub.docker.com/r/savonet/liquidsoap)) |
| `2.0.x` | [2.0.7](https://github.com/savonet/liquidsoap/releases/tag/v2.0.7) || [2.0.x](https://github.com/savonet/liquidsoap/releases/tag/rolling-release-v2.0.x) |
| `1.4.x` | [1.4.4](https://github.com/savonet/liquidsoap/releases/tag/v1.4.4) |||
Expand Down
4 changes: 2 additions & 2 deletions doc/content/hls_output.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ not recommended for listener-facing setup but can be useful to sync up with a ca

HLS outputs supports metadata in two ways:

- Through a `timed_id3` metadata logical stream with the `mpegts` format.
- Through regular ID3 frames, as requested by the [HLS specifications](https://datatracker.ietf.org/doc/html/rfc8216#section-3.4) for `adts`, `mp3`, `ac3` and `eac3` formats.
- Using the `%ffmpeg` encoder, through a `timed_id3` metadata logical stream with the `mpegts` format.
- Through regular ID3 frames, as requested by the [HLS specifications](https://datatracker.ietf.org/doc/html/rfc8216#section-3.4) for `adts`, `mp3`, `ac3` and `eac3` formats with the `%ffmpeg` encoder and also natively using the `%mp3`, `%shine` or `%fdkaac` encoders.
- There is currently no support for in-stream metadata for the `mp4` format.

Metadata parameters are passed through the record methods of the streams' encoders. Here's an example
Expand Down
6 changes: 6 additions & 0 deletions doc/content/migrating.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,12 @@ We applied the following changes:
- Cleaned up and removed parameters that were irrelevant to each operator, i.e. `icy_id` in `output.icecast` and etc.
- Made `mount` mandatory and `name` nullable. Use `mount` as `name` when `name` is `null`.

### HLS events

Starting with version `2.2.1`, on HLS outputs, `on_file_change` events are now `"created"`, `"updated"` and `"deleted"`. This breaking
was required to reflect the fact that file changes are now atomic. See [this issue](https://github.com/savonet/liquidsoap/issues/3284)
for more details.

### Harbor HTTP server and SSL support

The API for registering HTTP server endpoint and using SSL was completely rewritten. It should be more flexible and
Expand Down
Loading

0 comments on commit 0ffc471

Please sign in to comment.