tretelny / video-transcoding-api

Agnostic API to transcode media assets across different cloud services.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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:

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:secret.access.key@your-s3-bucket.s3.amazonaws.com/
export ENCODINGCOM_REGION="us-east-1"
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"
export ZENCODER_API_KEY=your.api.key
export ZENCODER_DESTINATION=http://access.key.id:secret.access.key@your-s3-bucket.s3.amazonaws.com/

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

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=200.221.14.140
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](https://github.com/NYTimes/video-transcoding-api/wiki/Using-Video-Transcoding-API)
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

- This code is under [Apache 2.0
  license](https://github.com/NYTimes/video-transcoding-api/blob/master/LICENSE).
- The video-transcoding-api logo is a variation on the Go gopher that was
  designed by Renee French and copyrighted under the [Creative Commons
  Attribution 3.0 license](https://creativecommons.org/licenses/by/3.0/).

About

Agnostic API to transcode media assets across different cloud services.

License:Other


Languages

Language:Go 98.0%Language:HTML 1.4%Language:Makefile 0.4%Language:Shell 0.2%