Open Source Newsletter #001

Channel Engine to support live sources

A new major version of our VOD2Live channel engine is now released. This release includes the functionality to mix in a true live HLS stream in a VOD2Live channel. This allows you to break into a live stream at any specified time on top of the usual VOD2Live content.

Demo of our open source VOD2Live Engine
class MyStreamSwitchManager {
getSchedule(channelId) -> [ { eventId, assetId, title, type, start_time, end_time, uri, duration } ]
const MyStreamSwitchManager = new MyStreamSwitchManager();

const engineOptions = {
heartbeat: '/',
channelManager: myChannelManager,
streamSwitchManager: myStreamSwitchManager,

const engine = new ChannelEngine(myAssetManager, engineOptions);
engine.listen(process.env.port || 8000);

Ingest Application Framework plugins

The following new plugins are now available that can be used in your ingest application based on our ingest application framework.

  • IAF plugin AWS MediaConvert: uploads a file to an S3 bucket and initiate an AWS MediaConvert transcoding job that place the resulting HLS on another S3 bucket.
  • IAF plugin AWS MediaPackage: register an HLS on an S3 bucket in AWS MediaPackage to for example allow just-in-time packaging to both HLS and MPEG-DASH.
  • IAF plugin SVT Encore: initiate a transcoding job using the transcoder Encore. A transcoder developed by Swedish Television and that is available as open source.

Scripts to automate a VMAF-based process to determine optimal ABR ladder

Optimizing ABR-ladders with the method developed by Netflix involves encoding your source material in a variety of different bitrates for each resolution. Each variant also needs to be analyzed using VMAF as video quality metric. This can be a quite manual and tedious process and to make this easier we set out to automate it as much as possible. All scripts and tools used in this blog post can be found in this GitHub-repository.

Using AWS ECS and MediaConvert to run this process in the cloud

SRT bindings for Swift

Bindings for Secure Reliable Transport library in Swift. SwiftSRT can be used with Swift Package Manager, Cocoapods, or by simply dragging the framework Frameworks/SwiftSRT.xcframework to the "Frameworks, Libraries, and Embedded Content"-list in Xcode.

pod 'SwiftSRT', '~> 0.1'

Test AdServer

Our adserver that can be used for testing server side ad insertion and impression tracking now have multi-tenant support and the functionality to have tenant-specific ad creatives. The ad creatives are provided as an mRSS feed.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Eyevinn Technology

Eyevinn Technology


We are consultants sharing the passion for the technology for a media consumer of the future.