Code Monkey home page Code Monkey logo

v-connection's Introduction

Sofie TV Automation Media Sequencer Engine connection library

Library to enable the Sofie TV Automation system to control a Vizrt Media Sequencer Engine (MSE), to be implemented in Node.js with Typescript.

This library is currently experimental. It currently contains:

Abstract

This library bridges the Vizrt Media Sequencer Engine and typescript to all the Sofie TV Automation system to control graphics generation.

Supported devices

Prerequisites

Building

Having checked out this project from git, install packages and build the native extension:

yarn install

Build the typescript interface module:

yarn build

This package has automated tests that run with jest. Test with:

yarn test

Importing

Add this module to your project with one of:

npm install v-connection
yarn add v-connection

Import into your project with one of:

const { createMSE, MSE } = require('v-connection')
import { createMSE, MSE } from 'v-connection'

Use factory createMSE to create a connection to a running MSE, e.g.:

let mse: MSE = createMSE('hostname.domain', restPort, wsPort)

Note that restPort and wsPort are optional. If omitted, the default port numbers will be used.

Usage

This version of the library assumes the following setup are has been done within an MSE in advance:

  • handlers describing connections to VizEngines have been created.
  • handlers for external elements, e.g. pilot database, have been created (typically named namespace_...).
  • a profile has been created to specify the relationship between channel names and engines and to represent the state of a running show.
  • one or more shows that contain scenes and master templates that can be used be this library to build internal element instances.

Given that setup, the steps to use the library are:

  1. Create an MSE instance (see above) to manage all communications with the MSE server.
  2. Discover the details of available shows, Viz Engines and profiles.
  3. Use the MSE to create a rundown, a v-connection concept that represents the linking of its own MSE playlist, a show and a profile.
  4. Add all the graphical elements to be used in the rundown.
  5. Activate the rundown and initialize heavy graphical elements to pre-load them.
  6. Query elements to check they are loaded and send commands to take graphics in and out, or continue through their animation states.
  7. During an active rundown, create new elements and initialize each one as required. Take care not to affect engine output. Repeat steps 6 & 7 as required.
  8. Deactivate a rundown and then purge all associated elements and clean up the VizEngine renderers.

Disclaimer

This library is in no way associated with, or endorsed by, Vizrt.

v-connection's People

Contributors

sparkpunkd avatar ianshade avatar olzzon avatar nytamin avatar eol-account avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.