Giter VIP home page Giter VIP logo

video-transcoding-api's Introduction

video-transcoding-api logo

Video Transcoding API

Build Status codecov Go Report Card

The Video Transcoding API provides an agnostic API to transcode media assets across different cloud services. Currently, it supports the following providers:

Setting Up

With latest Go installed, make sure to export the follow environment variables:

Providers configuration

export AWS_ACCESS_KEY_ID=your.access.key.id
export AWS_SECRET_ACCESS_KEY=your.secret.access.key
export AWS_REGION="us-east-1"
export ELASTICTRANSCODER_PIPELINE_ID="yourpipeline-id"

Please notice that for Elastic Transcoder you don't specify the destination bucket, as it is defined in the Elastic Transcoder Pipeline.

export BITMOVIN_API_KEY=your.api.key
export BITMOVIN_AWS_ACCESS_KEY_ID=your.access.key.id
export BITMOVIN_AWS_SECRET_ACCESS_KEY=your.secret.access.key
export BITMOVIN_AWS_STORAGE_REGION=your.s3.region.such.as.US_EAST_1.or.EU_WEST_1
export BITMOVIN_DESTINATION=s3://your-s3-bucket
export BITMOVIN_ENCODING_REGION=your.provider.region.such.as.AWS_US_EAST_1.or.GOOGLE_EUROPE_WEST_1
export BITMOVIN_ENCODING_VERSION=STABLE.or.BETA
export ELEMENTALCONDUCTOR_HOST=https://conductor-address.cloud.elementaltechnologies.com/
export ELEMENTALCONDUCTOR_USER_LOGIN=your.login
export ELEMENTALCONDUCTOR_API_KEY=your.api.key
export ELEMENTALCONDUCTOR_AUTH_EXPIRES=30
export ELEMENTALCONDUCTOR_AWS_ACCESS_KEY_ID=your.access.key.id
export ELEMENTALCONDUCTOR_AWS_SECRET_ACCESS_KEY=your.secret.access.key
export ELEMENTALCONDUCTOR_DESTINATION=s3://your-s3-bucket/
export ENCODINGCOM_USER_ID=your.user.id
export ENCODINGCOM_USER_KEY=your.user.key
export ENCODINGCOM_DESTINATION=http://access.key.id:[email protected]/
export ENCODINGCOM_REGION="us-east-1"

For Hybrik

export HYBRIK_URL=your.hybrik.api.endpoint.such.as.https://api_demo.hybrik.com/v1
export HYBRIK_COMPLIANCE_DATE=20170601
export HYBRIK_OAPI_KEY=your.hybrik.oapi.key
export HYBRIK_OAPI_SECRET=your.hybrik.oapi.secret
export HYBRIK_AUTH_KEY=your.hybrik.auth.key
export HYBRIK_AUTH_SECRET=your.hybrik.auth.secret
export HYBRIK_DESTINATION=s3://your-s3-bucket
export HYBRIK_PRESET_PATH=video-transcoding-api-presets

HYBRIK_PRESET_PATH is optional and defines the folder presets will be stored in. If not specified, it will default to 'video-transcoding-api-presets'.

export ZENCODER_API_KEY=your.api.key
export ZENCODER_DESTINATION=http://access.key.id:[email protected]/

Database configuration

In order to store preset maps and job statuses we need a Redis instance running. Learn how to setup and run a Redis here. With the Redis instance running, set its configuration variables:

export REDIS_ADDR=192.0.2.31
export REDIS_PASSWORD=p4ssw0rd.here

If you are running Redis in the same host of the API and on the default port (6379) the API will automatically find the instance and connect to it.

With all environment variables set and redis up and running, clone this repository and run:

$ git clone https://github.com/NYTimes/video-transcoding-api.git
$ make run

Running tests

$ make test

Using the API

Check out on our Wiki how to use this API.

Contributing

  1. Fork it
  2. Create your feature branch: git checkout -b my-awesome-new-feature
  3. Commit your changes: git commit -m 'Add some awesome feature'
  4. Push to the branch: git push origin my-awesome-new-feature
  5. Submit a pull request

License

video-transcoding-api's People

Contributors

flavioribeiro avatar marzagao avatar dayvson avatar fsouza avatar rajaksc avatar scentless-apprentice avatar davidrhodus avatar markx avatar balser avatar darrenmcc avatar scottefein avatar my3 avatar

Watchers

athiwatp 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.