The Transcoding API will consist of a set of lightweight Ruby classes that will be able to initiate transcoding jobs, distribute derivative files, track/poll job status, and perform common maintenance tasks such as prioritization, cancellation, and cleanup.
Definitions
Consumer | Application code that makes use of the Transcoding API. |
---|---|
Implementation | The set of classes and methods that make a given Transcoder available to a Consumer via the methods defined in the Transcoding API |
Job | A single piece of transcoding work |
Transcoder | An implementation-specific provider of transcoding services. Examples include OpenCast Matterhorn, Kaltura, Zencoder, and Amazon Elastic Transcoder. |
Transcoding API | The set of classes and methods that can be used to initiate, track and manipulate trancoding jobs. |
Classes
Transcoder::Base
An abstract model that serves as the reference for an Implementation.
Class Methods
create(input, output, opts={})
Begin a transcoding operation. Returns a job.
find(job_id)
Load and return a single job.
find_by_status(*states)
Find all jobs currently in the given state(s).
Instance attributes
job_id
state
current_operations
errors
original_filename
tech_metadata
Instance Methods
cancel!
canceled?
complete?
purge!
running?
update!
Chris's F2F Notes
File submission
...