@atem-connection/image-tools
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

ATEM connection image tools

Node CI npm

Usage

This library is intended to be used as optional optimisations for atem-connection NPM Github. It provides some image utilities with compiled (rust) implementations, which can be used instead of the javascript implementations used elsewhere.

Example:

import { Atem } from 'atem-connection'
import * as fs from 'fs'
import { encodeImageForAtem } from '@atem-connection/image-tools'

const conn = new Atem()

const file = fs.readFileSync('./testframe.rgba')

const encodedImage = encodeImageForAtem(1920, 1080, file, 'rgba')
conn.uploadStill(0, encodedImage, 'Test image', '').then(() => {
	console.log('Uploaded!')
})

// Or the less efficient method, with 'atem-connection' performing the colour conversion:
conn.uploadStill(1, file, 'Test image', '').then(() => {
	console.log('Uploaded!')
})

Development

Setting up

  • Clone the repository
  • Install a compatible version of nodejs and yarn
  • Install the rust compiler with rustup
  • Build the project with yarn build
  • You can use yarn link to link this into atem-connection

Modifying the rust code

To rebuild the native component you can run yarn build:rs. If you are changing the exposed api, you should instead run yarn build, so that typescript can check the new typings.

There are some rust unit tests, which can be run with yarn unit:rs, or you can run all the unit tests with yarn unit (make sure to rebuild the module first!).

Modifying the js code

You can run yarn build:js to rebuild the typescript code, optionally with the --watch parameter to re-run upon saving a file.

There are some unit tests, which can be run with yarn unit:js. This command calls into jest, so any jest arguments can also be used

Readme

Keywords

none

Package Sidebar

Install

npm i @atem-connection/image-tools

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

2.71 MB

Total Files

26

Last publish

Collaborators

  • julusian