samvera-labs / active_encode

Declare encode job classes that can be run by a variety of encoding services
Other
6 stars 8 forks source link

FFmpeg adapter #12

Closed cjcolvar closed 6 years ago

cjcolvar commented 6 years ago

Avalon needs a simple local encoding adapter for small-scale installs. This could be achieved by either writing a new adapter or fixing up the shingoncoder adapter. The hardest part of this will probably be figuring out how to get accurate progress information out of ffmpeg (Some hints here: https://stackoverflow.com/questions/747982/can-ffmpeg-show-a-progress-bar/31353647#31353647) as well as considering optimizations like having a single ffmpeg invocation for multiple outputs.

Tasks

child of https://github.com/samvera-labs/avalon-bundle/issues/176

phuongdh commented 6 years ago

Could use the -progress option to POST update to an URL on Avalon like: ffmpeg -v warning -progress https://avalon.edu/progress?id=someid -i input.mp4 output.mp4

Ref: https://ffmpeg.org/ffmpeg.html#toc-Main-options

phuongdh commented 6 years ago

FFmpeg to create multiple derivatives in a single command. Directories will be created to store input/ouput tech metadata, progress, etc in files. ActiveEncode parses progress/metadata from files when called upon. Need to figure out files management later.