Skip to content

NodeJS client Library for encoding Videos with Coconut

Notifications You must be signed in to change notification settings

BrandedEntertainmentNetwork/coconutjs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Coconut NodeJS Library

The Coconut NodeJS library provides access to the Coconut API for encoding videos, packaging media files into HLS and MPEG-Dash, generating thumbnails and GIF animation.

This library is only compatible with the Coconut API v2.

Documentation

See the full documentation.

Installation

To install this package, run:

npm install coconutjs

Usage

The library needs you to set your API key which can be found in your dashboard. Notification and storage settings are optional but are very convenient because you set them only once.

const Coconut = require('coconutjs');

const coconut = new Coconut.Client('k-api-key');

coconut.notification = {
  'type': 'http',
  'url': 'https://yoursite/api/coconut/webhook'
}

coconut.storage = {
  'service': 's3',
  'bucket': 'my-bucket',
  'region': 'us-east-1',
  'credentials': {
    'access_key_id': 'access-key',
    'secret_access_key': 'secret-key'
  }
}

Setting up your region:

coconut.region = "eu-west-1"

Creating a job

coconut.Job.create(
  {
    'input': { 'url': 'https://mysite/path/file.mp4' },
    'outputs': {
      'jpg:300x': { 'path': '/image.jpg' },
      'mp4:1080p': { 'path': '/1080p.mp4' },
      'httpstream': {
        'hls': { 'path': 'hls/' }
      }
    }
  }, function(job, err) {
    console.log(job);
  }
)

Getting information about a job

coconut.Job.retrieve('OolQXaiU86NFki', function(job, err) {
  console.log(job);
});

Retrieving metadata

coconut.Metadata.retrieve('OolQXaiU86NFki', function(metadata, err) {
  console.log(metadata);
})

Released under the MIT license.

About

NodeJS client Library for encoding Videos with Coconut

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%