Coder Social home page Coder Social logo

eshyong / concat-web Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gyfis/concat-web

0.0 1.0 0.0 41.43 MB

Simple "Deploy-to-Heroku" wrapper around the concat library (https://github.com/ArneVogel/concat)

License: GNU General Public License v3.0

C++ 5.69% C 19.06% Objective-C 0.07% Makefile 0.04% Roff 75.04% Python 0.09% Shell 0.02%

concat-web's Introduction

Deploy

Concat web service

Simple Flask web wrapper around the concat library (https://github.com/ArneVogel/concat) for easy heroku deployment. Uses two free dynos to work.

Features

Using Flask as a web server and Celery for the asynchronous job performs. The idea is to asynchronously invoke the commandline concat tool and return current state when getting the status in the web page request. Note that this tool doesn't guarantee that the files will be present in any time after the donwload is ready, as Heroku doesn't guarantee it not removing the files. For this reason, it is advised to download the file as soon as you see the download link ready, to prevent unnecessary re-downloading.

Endpoints

/<vod>/qualityinfo/

Used for calling the -qualityinfo on the vod, currently returns ugly list of quality options

/<vod_id>

Main endpoint, use for downloading and querying about download

Required query parameters

  • start, end - in the 00-00-00 format (hh-mm-ss), e.g. start=5-3-20&end=6-2-0

Optional query parameters

  • quality - use for specifying quality, e.g. ``&quality=360p30`
  • delete - use for deleting existing .mp4 file, e.g. &delete=true - WARNING you want to call the endpoint with this param only once to not remove the new downloaded file

Example call (not guaranteed this app will be up and vod to exist)

First call (to invoke the downloading)

Subsequent calls (to check status)

When the download is started, the web will list number of downloaded chunks. After the download is ready, the web will list a download button, which can be either downloaded or viewed in browser.

/download/<vod_id>

Endpoint for downloading or viewing in browser, doesn't have to be used directly (/<void_id> endpoint returns a link after download)

Thanks

Many thanks to ArneVogel for the standalone concat commandline app.

Licensing

Steps describing the build process for concat can be found in concat-vendor-build.sh, LICENSE file is included. The ffmpeg binary is taken from http://flect.github.io/heroku-binaries/libs/ffmpeg.tar.gz. This project uses GPL 3.0 because concat uses one.

concat-web's People

Contributors

gyfis avatar

Watchers

 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.