Releases: svt/encore
v0.2.6
fix: add configuration property that allows disabling setting of notify-keyspace-events on redis server
Before this fix, when starting encore, spring data redis
would try to use the CONFIG command to set
notify-keyspace-events on the redis server. If the server did not support the CONFIG command,
which is the case in many managed redis services, encore would fail to start.
With this fix, setting the property redis.keyspace.disable-config-notifications
to true string will stop spring data redis from trying to change the config.
If the property is not set, or set to true, spring data redis will behave as before,
that is use the CONFIG command to set 'notify-keyspace-events'.
Note that this fix has to be set in compile time when native compile is used.
Thanks to @grusell for providing the fix.
v0.2.5
As a workaround for issues with thumbnails in combination with Ffmpeg 7, added option decodeOutput
to ThumbnailEncode
and ThumbnailMapEncode
allowing them to use video output as input using loopback decoder introduced in Ffmpeg 7.
v0.2.4
Added boolean property encore-settings.encoding.exit-on-error
(default true) that will add ffmpeg flag -xerror
(Stop and exit on error).
Added map property encore-settings.encoding.global-params
(default empty map) for params to be added before other params.
v0.2.3
New feature: Dialogue enhancement
AudioEncode
can now enhance dialogue by compressing background channels using signal from front center channel of input. This is done with the Ffmpeg filter sidechaincompress. If the input is stereo, a front center is produced using the Ffmpeg filter dialoguenhance before applying sidechaincompress. Dialogue enhancement can optionally be combined with an audioMixPreset to further lift the center channel and/or lower the background channels.
To enable this feature, simply add dialogueEnhancement.enabled: true
to an AudioEncode in a profile like this:
- type: AudioEncode
bitrate: 128k
suffix: _STEREO_DE
dialogueEnhancement:
enabled: true
Dialogue enhancement can be customized further using properties (listed are the default values):
- type: AudioEncode
bitrate: 128k
suffix: _STEREO_DE
dialogueEnhancement:
enabled: true
sidechainCompress:
ratio: 8
threshold: 0.012
release: 1000.0
attack: 100.0
dialogueEnhanceStereo:
enabled: true
original: 1
enhance: 1
voice: 2
v0.2.2
Spring spel expressions in profile
Added support for spring spel expressions in profiles.
See https://docs.spring.io/spring-framework/reference/core/expressions.html.
Profiles are parsed as spel expression templates with EncoreJob as root object.
Added field profileParams to EncoreJob to be used in profile templates.
v0.2.0
Introducing Encore Instant - Chunked based encoding in Encore
NEW FEATURES
- Encore now supports chunked based encoding - allowing for a potential massive increase in transcoding speed (which is mostly limited by storage I/O) by encoding parts of a video in parallel across several instances / machines.
- Set segmentLength (in seconds) in encoreJob to activate chunked encoding, it should be a multiple of the target GOP. Encore will then transcode segments of that length in parallel across the cluster of servers. Requires 'encore-settings.sharedWorkDir' pointing to dir accessible to all encore instances for intermediate storage of transcoded segments.
- Startup time has been greatly improved by support for native compilation using graalvm (tested with graalvm community edition 17.0.8).
KNOWN LIMITATIONS
- Encore Instant currently relies heavily on ffmpeg's input seek. This means that input files of a format that ffmpeg can't properly input seek through (just about everything that is not I-Frame only codecs/flavours) wont work out of the box!
- Encore Instant is only suitable for 1-pass transcodes, usually x264 / x265 CRF or Mezzanine files.
- Encore Instant does not allow thumbnail output
BREAKING CHANGES
- code base has been split into three parts:
- encore-web: A drop in replacement for the old encore artifact. Exposing rest endpoints.
- encore-worker: Artifact suitable for running single jobs from the work queue, e.g as Kubernetes jobs triggered by KEDA.
- encore-common: code shared by encore-web and encore-worker