drag0s / coconutjs

NodeJS client Library for encoding Videos with Coconut

Home Page:http://coconut.co

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NodeJS client Library for encoding Videos with Coconut

Install

npm install coconutjs

Submitting the job

Use the API Request Builder to generate a config file that match your specific workflow.

Example of coconut.conf:

var s3 = s3://accesskey:secretkey@mybucket

set webhook = http://mysite.com/webhook/coconut?videoId=$vid

-> mp4  = $s3/videos/video_$vid.mp4
-> webm = $s3/videos/video_$vid.webm
-> jpg:300x = $s3/previews/thumbs_#num#.jpg, number=3

Here is the javascript code to submit the config file:

var coconut = require('coconutjs');

coconut.createJob({
  'api_key': 'k-api-key',
  'conf': 'coconut.conf',
  'source': 'https://s3-eu-west-1.amazonaws.com/files.coconut.co/test.mp4',
  'vars': {'vid': 1234}
}, function(job) {
  if(job.status == 'ok') {
    console.log(job.id);
  } else {
    console.log(job.error_code);
    console.log(job.error_message);
  }
});

You can also create a job without a config file. To do that you will need to give every settings in the method parameters. Here is the exact same job but without a config file:

var coconut = require('coconutjs');

vid = 1234
s3 = 's3://accesskey:secretkey@mybucket'

coconut.createJob({
  'api_key': 'k-api-key',
  'source': 'http://yoursite.com/media/video.mp4',
  'webhook': 'http://mysite.com/webhook/coconut?videoId=' + vid,
  'get_webhook_metadata': true,
  'outputs': {
    'mp4': s3 + '/videos/video_' + vid + '.mp4',
    'webm': s3 + '/videos/video_' + vid + '.webm',
    'jpg:300x': s3 + '/previews/thumbs_#num#.jpg, number=3'
  }
}, function(job) {
  //...
});

Note that you can use the environment variable COCONUT_API_KEY to set your API key.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Released under the MIT license.


About

NodeJS client Library for encoding Videos with Coconut

http://coconut.co


Languages

Language:JavaScript 100.0%